テータベースは、ODBC 経由の Oracle です 関連する記事 VB.net : GetSchema メソッドでデータベース内のテーブル一覧と指定したテーブルの列名一覧を取得する Microsoft の ODBC アクセスとあまり変わりはありません。 データベースの情報は接続オブジェクトに依存します
<!DOCTYPE html> <html lang="ja"> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <%@ page language="java" import="java.io.*" import="java.text.*" import="java.util.*" import="java.sql.*" contentType="text/html;charset=Windows-31J" %> <body> <% // ********************************************************* // Shift_JIS の特殊文字を正しく表示する為の Windows-31J // ( ※ 7 行目に注目 ) // ********************************************************* Connection cn = null; Statement st = null; ResultSet rs = null; int nCnt = 0; // ********************************************************* // ドライバの準備 // ********************************************************* Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); // ********************************************************* // 接続 // ********************************************************* String connectionString = "Provider=MSDASQL" + ";Driver={Oracle in OraClient11g_home1}" + ";DBQ=PC名/ORCL" + ";UID=DOUMI" + ";PWD=DOUMI" + ";"; cn = DriverManager.getConnection( "jdbc:odbc:"+connectionString ); // ********************************************************* // データベースのメタデータを取得 // ********************************************************* DatabaseMetaData objMet = cn.getMetaData(); // ********************************************************* // テーブル一覧を返すリザルトセットを取得 // ********************************************************* rs = objMet.getTables(null,"スキーマ名","%",new String[]{"TABLE"}); while( rs.next() ) { out.print( rs.getString("TABLE_NAME") + "<br />" ); } rs.close(); out.print( "<hr />" ); // ********************************************************* // 対象テーブルの列一覧を返すリザルトセットを取得 // ********************************************************* rs = objMet.getColumns(null,"スキーマ名","テーブル名","%"); while( rs.next() ) { out.print( rs.getString("COLUMN_NAME") + " | " ); out.print( rs.getInt("COLUMN_SIZE") + " | " ); out.print( rs.getString("TYPE_NAME") + "<br />" ); } rs.close(); out.print( "<hr />" ); // ********************************************************* // SQL 実行の準備 // ********************************************************* st = cn.createStatement(); // ********************************************************* // SQL 実行 // ********************************************************* rs = st.executeQuery("SELECT * from 社員マスタ"); // ********************************************************* // リザルトセットより、テーブルのメタデータを取得 // ********************************************************* ResultSetMetaData rsmd = rs.getMetaData(); // ********************************************************* // 列数 // ********************************************************* int numberOfColumns = rsmd.getColumnCount(); // ********************************************************* // 列一覧 // ********************************************************* for( int i = 1; i <= numberOfColumns; i++ ) { out.print( rsmd.getColumnName(i) + "<br />" ); } rs.close(); // ********************************************************* // 接続解除 // ********************************************************* cn.close(); %> </body> </html>
|
【java : JSPの最新記事】
- Tomcat 7(JSP) : 配列, ArrayList, ループ処理
- XAMPP 内 Tomcat Version 7 の設定と簡単な JSP の実行テスト
- JDK がインストールされていない PC の XAMPP の TOMCAT を Pleiades の JDK8 で動作させる
- Pleiades All in One(NEON) で、サーブレットとJSP を作成する手順
- JSP : 実行中の .jsp と同じフォルダにあるファイルの実際のパスを取得する
- JSP : 単純なデータベースの更新( MySQL ODBC 5.1 Driver でDSNを作成しない接続 )
- javamail 1.4.4 + JSP でとにかくメール送信
- Tomcat7 のインストールと、すぐ簡単にJSPアプリケーションテスト( DB アクセス、入力等 )
- TOMCAT6 をインストールしてサンプルアプリケーションも自動登録する