2017-04-17 20 views
0

MySQLのテーブルAにデータを挿入するために、java(NetBeansを使用)でプロジェクトを作成しました。別のテーブルに列があるテーブルに挿入する

テーブルAにはプライマリキーpIDがあり、11カラムありますが、テーブルAはテーブルBの外部キーであるカラムに属していなければなりません。私がテーブルAの行に行を挿入しようとすると、その行は機能します。行が挿入されます。

しかし、私は(私は、MySQLで作成したプロシージャusp_emを使用して、それがオートインクリメントカラムを含まない)Javaで行を挿入しようと、それは動作しません。 私はこのように手続きの呼び出しを行います。私はMySQLではなく、Javaから直接行を挿入することができる理由

CallableStatement cs = conn.prepareCall("call usp_em(?,?,?,?,?,?,?,?,?)"); 

だから私は理解していませんか? MySQL JDBCドライバもライブラリとして使用されています!

+0

あなたのコードを共有することができますしてください? –

答えて

1
あなたが例えば {}の間、あなたの手順を配置する必要があり

String query = "{call usp_em(?,?,?,?,?,?,?,?,?)}"; 
//--------------^------------------------------^ 
CallableStatement statement = connection.prepareCall(query); 
statement.setString(1, param1); 
statement.setString(2, param2); 
statement.setString(3, param3); 
... 
statement.execute(); 
関連する問題