要するに、MySQL の ODBC ドライバを使って、jdbc:odbc ドライバを使用すると、プロジェクトを MS932(SHIFT_JIS) で作成して、ドライバのオプションを sjis にしないとうまくいかない。 しかし、jdbc:mysql だと、何もしなくてもどちらからも接続できました。逆にオプション設定しても現実の状態を見てそちらを優先させているような感じです。 ドライバは、Download Connector/J をダウンロードしてインストールしますが、MySQL をインストールした PC ならば既にインストールされていると思います。場所は、『C:\Program Files\MySQL\MySQL Connector J』 の mysql-connector-java-5.1.26-bin.jar を Eclipse の 実行構成の『クラスパス』タブで、ユーザーエントリーに『外部 Jar 追加』で参照させました。 ドキュメント(英文)
Connection con;
Statement stmt;
ResultSet rset;
// String connectionString =
// "jdbc:odbc:Provider=MSDASQL" +
// ";Driver={MySQL ODBC 5.2w Driver}" +
// ";SERVER=localhost" +
// ";DATABASE=lightbox" +
// ";UID=root" +
// ";PWD=trustno1" +
// ";Charset=sjis" +
// ";";
String connectionString = "jdbc:mysql://localhost/lightbox?" +
"user=root&password=パスワード";
try {
con = DriverManager.getConnection(connectionString);
stmt = con.createStatement();
rset = stmt.executeQuery ( "select * from `社員マスタ`" );
ResultSetMetaData rm = rset.getMetaData();
int nCols = rm.getColumnCount();
String[] data = new String[nCols];
int i;
while( rset.next() ) {
for( i = 0; i < nCols; i++ ) {
data[i] = rset.getString( i+1 );
if ( i != 0 ) {
System.out.print( "," );
}
System.out.print( data[i] );
}
System.out.println( );
}
stmt.close();
con.close();
}
catch (Exception e) {
System.out.println( e.getMessage() );
}
久しぶりに Java から DB にアクセスして、Class.forName が必要無くなった事を認識しました・・・・
|
|
【Javaの最新記事】
- Java : Okhttp( GET ) と Google Gson( JSON => オブジェクト ) で WEB アクセス
- JSP で単純な MySQL アクセス ( mysql-connector-java-5.1.47.jar )
- Java : 単純な MySQL アクセス ( mysql-connector-java-5.1.47.jar )
- Eclipse に 画面分割があるとは知らなかった。
- Google Gson の fromJson が、配列でも ArrayList でも同等に扱ってくれる事のテスト
- Java sun.jdbc.odbc.JdbcOdbcDriver から Microsoft Excel
- Java sun.jdbc.odbc.JdbcOdbcDriver から Microsoft Access
- Pleiades All in One 4.4.2.v20150310(Luna) の Java 32bit Full Edition が、自己解凍書庫で、Vector に登録されている件
- Eclipse : プライベートクラスの作成
- Java の授業で社員マスタメンテを作成しています
- Java:Windows(C++)で言うところのアクセラレータキー
- JTableの標準化(ほぼ完成版)
- Javaバッチビルド:iText(PDF)で、MSGOTHIC.TTCを使って4つのレイヤーを使い、位置指定してコンテンツを作成するサンプル
- Java:Eclipse+VisualEditor+ZIPファイル内エントリ一覧(JTable)と解凍
- Java:Eclipse+VisualEditorでフリーソフトのカレンダーコンボボックスを使う
- 【JavaSwing】ポップアップメニューを実装するスケルトン
- 【Java】UTF8で書き出すにはFileInputStreamレベルで先に書く
- 【Java】JComとJACOBでCOMを呼び出す(スタンバイ状態にする)
- 【JavaSwing】キー入力制限とフィールド入力制限
- 【Java】Java用設定ファイル(XML)




























