SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

JAVA Servlet、JSP + Oracle9i 編6 - JDBC、テーブル構造リスト一覧表示

■テーブル構造リスト一覧表示

  ・各テーブルのテーブル構造リスト一覧を表示するには、次のようにする。

<%@ page import="java.util.*,java.sql.*,java.text.*;" contentType="text/html; charset=Shift_JIS"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<TITLE>テーブル構造リスト一覧</TITLE>
</HEAD>
<BODY>
<CENTER>
<P>テーブル構造リスト一覧</P>
</CENTER>
<%
  String drv = "oracle.jdbc.OracleDriver";
  String dsn = "jdbc:oracle:thin:@localhost:1521:sak";
  String sql = "select lower(table_name) as テーブル名, column_name as 項目名, lower(data_type) as 項目タイプ, nvl(data_precision, char_col_decl_length) as 長さ, data_scale as 小数部 from user_tab_columns order by table_name, column_id";
  Connection cn = null;
  Statement st = null;
  ResultSet rs = null;
  String svtbl = "";

  // Oracle9i JDBC ドライバロード
  try {
    Class.forName(drv);
  } catch (Exception e) {
    out.println("<P>JDBC ドライバロードエラー<BR>" + e.toString() + "</P>");
  }

  // Oracle9i JDBC 接続
  try {
    cn = DriverManager.getConnection(dsn, "sak", "sak");
  } catch (Exception e) {
    out.println("<P>JDBC 接続エラー<BR>" + e.toString() + "</P>");
  }

  // Oracle9i JDBC 問い合わせ SQL 作成
  try {
    st = cn.createStatement();
  } catch (Exception e) {
    out.println("<P>JDBC 問い合わせ SQL 作成エラー<BR>" + e.toString() + "</P>");
  }

  // Oracle9i JDBC レコードセットオープン
  try {
    rs = st.executeQuery(sql);
  } catch (Exception e) {
    out.println("<P>JDBC レコードセットオープンエラー<BR>" + e.toString() + "</P>");
  }

  // テーブルヘッド出力
  out.println("<TABLE border=1 bordercolordark=White bordercolorlight=#bdaa90 cellPadding=4 cellSpacing=0>");
  out.println("<TBODY bgcolor=#f0f0f0>");

  // Oracle9i JDBC レコードセットリード
  try {
    while (rs.next()) {
      if (!svtbl.equals(rs.getString("テーブル名"))) {
        if (!svtbl.equals("")) {
          out.println("<TR><TD colspan=4> </TD></TR>");
        }
        svtbl = rs.getString("テーブル名");
        out.println("<TR bgcolor=#d0d0d0><TD>テーブル</TD><TD colspan=3>" + rs.getString("テーブル名") + "</TD></TR>");
        out.println("<TR bgcolor=#d0d0d0><TD>項目</TD><TD>タイプ</TD><TD>長さ</TD><TD>小数部</TD></TR>");
      }
      out.println("<TR>");
      out.println("<TD>" + rs.getString("項目名") + "</TD>");
      out.println("<TD>" + rs.getString("項目タイプ") + "</TD>");
      out.println("<TD align=right>" + rs.getString("長さ") + "</TD>");
      out.println("<TD align=right>" + rs.getString("小数部") + "</TD>");
      out.println("</TR>");
    }
  } catch (Exception e) {
    out.println("<P>JDBC レコードセットリードエラー<BR>" + e.toString() + "</P>");
  }

  // テーブルテイル出力
  out.println("</TBODY></TABLE>");

  // Oracle9i JDBC レコードセットクローズ
  try {
    rs.close();
  } catch (Exception e) {}

  // Oracle9i JDBC ステートメントクローズ
  try {
    st.close();
  } catch (Exception e) {}

  // Oracle9i JDBC 接続クローズ
  try {
    cn.close();
  } catch (Exception e) {}
%>
</BODY>
</HTML>

■実行結果

テーブル構造リスト一覧

テーブルipm
項目タイプ長さ小数部
IP varchar2 15 null
組織1 varchar2 200 null
組織2 varchar2 200 null
 
テーブルlogm
項目タイプ長さ小数部
日付 char 10 null
時間 char 8 null
番号 number 9 0
枝番 number 3 0
事業所 char 2 null
担当者 varchar2 20 null
取引区分 varchar2 8 null
更新前番号 number 9 0
送信済 char 1 null
SQL long 0 null
IP varchar2 15 null
USERNAME varchar2 20 null
 

■JAVA Servlet、JSP + Oracle9i 編資料
■JAVA Servlet、JSP + PostgreSQL 編資料
■JAVA Servlet、JSP 基礎編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料
■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK