2012-02-28 17 views
0

以前私はMS Accessでいくつかの経験をしていましたが、今はもちろんJavaでJDBCをやっています。 MS Accessデータベースでは、主キーの生成に非常に便利な、連番フィールドを持つことができます。私はJavaで同じことをしたいと思います。しかし、SO(とGoogleのコース)を数日間掘り下げた後、私が見つけることができるのはちょっと便利な方法です。そのうちの1つは、最初にテーブル内で最大のプライマリキー(たとえばN)を取得し、(N + 1)のキーで最新のレコードを挿入することです。これはうまくいくが、効率的ではない。どのような天才が私を助けることができますか?JDBCで自動番号付きバッチインサートを実行するにはどうすればよいですか?

+0

主キー(データベース内のオートナンバーを設定します)を指定せずにJDBCを使用して挿入クエリを起動すると、自動的に生成されたキーで新しいレコードを挿入する必要があります。 – JProgrammer

+0

私はあなたがレコードを挿入し、生成されたキーを取得したいと思う、それがあなたの場合、私はバッチモードを無視すると思います。 –

+0

誰も似たような質問に答える人はいません。私はこれを逃したばかです。ありがとうございました! – Biscuitz

答えて

1

MySQLにも同様の機能があります。自動インクリメントです。キーフィールドにこれを追加するだけです。あなたがどのビット

+0

は問題なく動作します。ありがとうございました! – Biscuitz

1

わからないが

上が、MySQLの自動番号で立ち往生しているが、基本的です。

CREATE TABLE table_name 
( 
    id INTEGER AUTO_INCREMENT PRIMARY KEY , 
    Value INTEGER 
) 

Javaのようなものから使用するには、SQLでスキップしてください。

Insert table_name(Value) Values(10) 
+0

それだけです。ありがとうございました! – Biscuitz

1

これは実際にJDBCに関連していません。

mysqlにテーブルを作成する必要があります。このテーブルは、自動インクリメント列(列の仕様についてはINTEGER AUTO_INCREMENT PRIMARY KEYを参照してください)を使用してください。

次に、JDBCでは、データを挿入するとその列は無視されます(存在しなかったような)、データベースがそれを処理します。

+0

がそれを手に入れました。どうもありがとうございました!! – Biscuitz

関連する問題