我正在尝试使用JAVA在Vertica中创建表模型(i,y1,y2 .... yd)。第i列是整数,其他所有列均为REAL。我使用以下代码创建它。但是,它显示语法错误为null或接近null。有人知道这意味着什么吗?该连接适用于该程序。
public void createMODEL(int d)
{
int x;
try
{
Statement stmt = conn.createStatement();
String createquery = "CREATE TABLE MODEL ( "
+ "i integer primary key ";
for (x=1;x<=d;x++) createquery+= " , " + Y[x] + " REAL ";
createquery += ")";
stmt.executeUpdate(createquery);
}
catch (Exception e)
{
System.out.println("Error while executing create model query");
System.out.print(e);
System.exit(0);
}
}
Y定义如下-
String Y[]=new String[100];
最佳答案
我猜您应该检查Y[x]
是否不为null:
Statement stmt = conn.createStatement();
String createquery = "CREATE TABLE MODEL ( "
+ "i integer primary key ";
for (x=1;x<=d;x++) {
if (Y[x] != null) createquery+= " , " + Y[x] + " REAL ";
}
createquery += ")";
stmt.executeUpdate(createquery);