0

ベクトル値をデータベースに保存する方法は? 簡単な例が役に立ちます (初心者)

以下のようなベクトルがあり、その内容をデータベースで利用可能な 11 列に保存したいと考えています。ベクトルには 11 個の値が含まれます。

Vector cellStoreVector = new Vector();

以下は私が試したコードです。構造または構文に問題はありますか? エラーは発生せず、値も DB に保存されませんでした。

String sql = "INSERT INTO table name (EMP_ID,FNAME, LNAME, CATEGORY, DEPARTMENT, Title, REASON, TL, START_DATE, END_DATE, ID) VALUES(?,?,?,?,?,?,?,?,?,?,?)";
    PreparedStatement pst1 = conn.prepareStatement(sql);
    pst1.setString(1, cellStoreVector .get(0) );
    pst1.setString(2, cellStoreVector .get(1));
    pst1.setString(3, cellStoreVector .get(2));
    pst1.setString(4, cellStoreVector .get(3);
    pst1.setString(5, cellStoreVector .get(4));

            pst1.setString(11, cellStoreVector .get(10)     ;

pst1.execute();

4

2 に答える 2

1

http://www.tutorialspoint.com/jdbc/jdbc-sample-code.htm

あなたが提供した上記のコードがすべてである場合、エラーが発生せず、データベースにコミットされなかった理由がわかります。jdbc を実行して結果を返す、または挿入または更新を実行するには、準備済みステートメントを実行する必要があります。上記のリンクは非常に単純な例です。

于 2012-10-16T21:08:21.587 に答える
0

SQLリクエストは

INSERT INTO table_name VALUES (value1, value2, value3,...)

文字列を作成して SQL エンジンに渡すだけです。

Vector< String > v = new Vector<>();
v.add( "riri" );
v.add( "fifi" );
v.add( "loulou" );
String insert =
   String.format(
      "INSERT INTO table_name VALUES ( '%s', '%s', '%s' )",
      v.get(0), v.get(1), v.get(2));
System.out.println( "SQL statement: " + insert );
statement.execute( insert );
于 2012-10-16T21:01:03.037 に答える