当我向数据库插入一些行时,我收到此错误。
代码
public class InsertRowData {
public static void main(String[] args)throws ClassNotFoundException, SQLException{
Connection con = (Connection) DriverManager
.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL" , "system" , "system");
Statement statement = con.createStatement();
String dmlinsert = "insert into student(111,manoj,rawatrulz09)";
int rowseffected = statement.executeUpdate(dmlinsert);
System.out.println("no of rows effected" + rowseffected);
}
}
在谷歌搜索后,我发现解决方案从列中删除单引号但仍然得到相同的错误。 p.s-我是新手
答案 0 :(得分:0)
这是将任何数据插入表格的不好方法。
String dmlinsert="insert into student(111,manoj,rawatrulz09)"
首先,您的查询缺少语法Values
。
在插入时未提及列时,values
必须分别包含相同数量的数据。
但是在插入数据时,最佳做法是提及列,以便在以后对数据库中的表进行任何更改时,插入查询保持稳定。
例如:
insert into student(id, name, email) values(111,'manoj','rawatrulz09')
。
现在,如果将来你会在这个表中添加一个列,你的插入查询仍然会按照它提到的列工作,但如果你不提及任何列,那么你的代码将在执行时开始给出错误{{1祝你好运!祝你好运! 无论如何,回答你的插入查询:
no of values don't match given to the table