- PR -

SQL情報の取得

1
投稿者投稿内容
がっさん
常連さん
会議室デビュー日: 2003/10/03
投稿数: 24
投稿日時: 2003-10-06 11:15
こんにちは。

JDBCを利用したデータベース接続に関する質問なのです。
SQLステートメントに渡されるパラメータの情報を取得したいのですが、
Javaソースからそのようなことはできるのでしょうか。

データベースは、MySQLを使っています。
taku
ぬし
会議室デビュー日: 2002/11/12
投稿数: 918
お住まい・勤務地: 墨田区→中野区
投稿日時: 2003-10-06 11:48
引用:

がっさんさんの書き込み (2003-10-06 11:15) より:
こんにちは。

JDBCを利用したデータベース接続に関する質問なのです。
SQLステートメントに渡されるパラメータの情報を取得したいのですが、
Javaソースからそのようなことはできるのでしょうか。

データベースは、MySQLを使っています。


 もう少し具体的に書かれた方が良いかと
がっさん
常連さん
会議室デビュー日: 2003/10/03
投稿数: 24
投稿日時: 2003-10-06 12:03
失礼いたしました。

例えば、DBに接続するときに、

conn = DriverManager.getConnection(url, name, password);

とデータベースに接続情報を与えますが、
Javaプログラム側とデータベース間のインターフェースなどから
そのような情報を取得する方法などがあるのでしょうか。
また、もしそういうインタフェースがあれば、
Javaコードからそれらを操作することなどできるのでしょうか。


taku
ぬし
会議室デビュー日: 2002/11/12
投稿数: 918
お住まい・勤務地: 墨田区→中野区
投稿日時: 2003-10-06 12:13
 JavaにはDatabaseMetaDataと、
ResultSetMetaDataという情報(メタデータ)を取得するためのクラスが用意されています。

http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/sql/DatabaseMetaData.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/sql/ResultSetMetaData.html
tu
会議室デビュー日: 2003/07/31
投稿数: 11
投稿日時: 2003-10-06 12:13
引用:

conn = DriverManager.getConnection(url, name, password);



この部分は、明らかに*アプリケーションが*DBに与えるべき
情報ですから、インタフェースから取得することは原理的に
不可能だと思いますが...
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2003-10-06 12:27
p6spyってのを使うと JDBCドライバの呼び出しに割り込んで、値を覗くことができます。
PreparedStatement に実際どのような値がセットされているかもわかりますので大変便利。

http://www.p6spy.com/
がっさん
常連さん
会議室デビュー日: 2003/10/03
投稿数: 24
投稿日時: 2003-10-07 14:14
アドバイスありがとうございました。
DatabaseMetaDataと、ResultSetMetaDataクラスはプログラム中に組み込んで
情報を獲得するものですよね。

あと私が考えていることは、JDBCを利用したアプリケーションを解析する場合
実際そのようなクラスは組み込まれていないわけなので、データベースの情報などを
獲得する場合はどうすればいいのでしょうか。

そういう意味では、(下は引用です)
引用:

インギさんの書き込み (2003-10-06 12:27) より:
p6spyってのを使うと JDBCドライバの呼び出しに割り込んで、値を覗くことができます。
PreparedStatement に実際どのような値がセットされているかもわかりますので大変便利。

http://www.p6spy.com/




を使用すればできるのでしょうか。
まだ、実際に試してはいないのですが。

1

スキルアップ/キャリアアップ(JOB@IT)