【发布时间】:2012-06-06 21:00:40
【问题描述】:
我正在尝试创建程序在运行时获取行数和列数的表。
代码如下:
String sql =
"CREATE TABLE if not exists itemset (?";
up1 = con.prepareStatement(sql);
for(int j=1; j < ccolumns; j++) {
sql += ",?";
}
sql += ")";
System.out.println(sql);
for(int j=1; j < ccolumns+1; j++) {
System.out.println(j);
up1.setString(j, "item"+j+" TINYINT(10)");
}
up1.executeQuery();
错误是
Parameter index out of range (2 > number of parameters, which is 1)
在第二次迭代时出现在 setString 行中
【问题讨论】:
-
也许你应该调用“prepare”在你完成构建 SQL 字符串 ;)?
-
PreparedStatement 不应用于 CREATE TABLE sql。
标签: java jdbc prepared-statement sqlexception