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 回答