【发布时间】:2020-08-16 02:28:07
【问题描述】:
System.out.println("Enter the code: ");
Code=input.next();
System.out.println("Enter the title: ");
Title=input.next();
System.out.println("Enter the semster: ");
Semester=input.next();
System.out.println("Enter the year: ");
Year=input.next();
System.out.println("Enter the grade: ");
Grade=input.next();
String insertStatement ="insert into Courses values('"+Code+"'+'"+Title+"'+'"+Semester+"'+'"+Year+"'+'"+Grade+"')";
System.out.println(insertStatement);
s.execute(insertStatement);
continue;
当我插入值并运行代码时,它会显示给我
insert into Courses values('GET'+'CS'+'Fall'+'2016'+'C+')
错误
java.sql.SQLSyntaxErrorException: ORA-00947: not enough values
有人可以为我解释一下吗?谢谢
【问题讨论】:
-
一些提示:变量名应该几乎总是小写(代码应该是代码,年份应该是年份等)...也请查看
PreparedStatement类。将变量直接连接成 sql 字符串是非常糟糕的做法 -
为什么要连接成一个字符串?您不想将 5 个单独的值传递给 Oracle 吗?
String insertStatement ="insert into Courses values('"+Code+"','"+Title+"','"+Semester+"','"+Year+"','"+Grade+"')";
标签: java mysql sql database oracle