列计数与第 1 行的值计数不匹配 VendorError:1136
Posted
技术标签:
【中文标题】列计数与第 1 行的值计数不匹配 VendorError:1136【英文标题】:Column count doesn't match value count at row 1 VendorError:1136 【发布时间】:2013-01-07 22:51:22 【问题描述】:我遇到以下错误:
列数与第 1 行的值数不匹配
我的代码是:
Connection con=DriverManager.getConnection("jdbc:mysql://127.0.0.1/BFPL","root","[PASSWORD]");
PreparedStatement ps=con.prepareStatement("Insert into User values(?,?,?,?,?,?)");
ps.setString(1,t52.getText());
ps.setString(2,pw2.getText());
ps.setString(3,t53.getText());
ps.setString(4,t54.getText());
ps.setInt(5,100);
ps.setInt(6,11);
ps.executeUpdate();
PreparedStatement ps1=con.prepareStatement("Insert into User_Team values(?,?)");
ps1.setString(1,t52.getText());
ps1.setInt(2,0);
ps1.executeUpdate();
con.close();
在第一个表用户中,它们是 6 列,在第二个表 User_team 中,它们是 13 列,我只插入 2 个值,其中第一个值是主键。
【问题讨论】:
【参考方案1】:如果您没有在表的所有列中插入,那么您必须像这样在插入查询中命名要插入的列
Insert into User_Team (col1, col4) values(?,?)
考虑一下 - 数据库引擎应该如何知道值属于哪些列?
【讨论】:
【参考方案2】:PreparedStatement ps1=con.prepareStatement("Insert into User_Team (col_name1, col_name2) values(?,?)");
【讨论】:
以上是关于列计数与第 1 行的值计数不匹配 VendorError:1136的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 抛出“java.sql.SQLException:列计数与第 1 行的值计数不匹配”[重复]
Codeigniter 模型出现错误:列计数与第 2 行的值计数不匹配