Java ArrayList<>插入Oracle DB

时间:2013-12-04 19:18:13

标签: java arraylist oracle-xe

我需要在Oracle XE中插入一个ArrayList。这就是我的汗水:

    ArrayList <Double> array = new ArrayList<Double>();
    array.add(10.2);
    array.add(11.2);
    array.add(12.2);
    array.add(1.2);
    array.add(10.2);
    array.add(10.2);
    array.add(10.2);


    Connection dbConnection = null;
    Statement statement = null;
    ResultSet rows = null;
    Iterator<Double> it=array.iterator();

    String insertTableSQL = "INSERT INTO RVALUES VALUES(";


    for(int i=0;i<array.size();){

        it.next();
        i++;
    }
    insertTableSQL +=")";

    String selectTableSQL = "Select * from RVALUES";

    try {
        dbConnection = getDBConnection();
        statement = dbConnection.createStatement();

        System.out.println(insertTableSQL);

        rows = statement.executeQuery(selectTableSQL);

        while(rows.next()){
            System.out.print(rows.getInt(1)+"\t");
            System.out.println(rows.getInt(2));
        }

        statement.executeUpdate(insertTableSQL);

        System.out.println("Record is inserted into DBUSER table!");

它说“ORA-00936:缺少表达”。我这么久才重新做这件事......我迷失了。对此的任何帮助都将非常感激。

2 个答案:

答案 0 :(得分:0)

不要这样做。

创建PreparedStatement并进行批量更新。

这将更快,更安全。

答案 1 :(得分:0)

@Christian Kuetbach,非常感谢这个链接。这很有帮助。

问题解决了。

P.S。我确实知道SLQ是什么以及如何。这只是一个简单的例子,可用于更复杂的项目!无论如何,祝大家好日子: - )