Column count doesn't match value count at row 1的问题_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2312 | 回复: 0   主题: Column count doesn't match value count at row 1的问题        下一篇 
Irvinna
注册用户
等级:新兵
经验:51
发帖:46
精华:0
注册:2011-8-19
状态:离线
发送短消息息给Irvinna 加好友    发送短消息息给Irvinna 发消息
发表于: IP:您无权察看 2014-11-18 10:55:34 | [全部帖] [楼主帖] 楼主

网上查了下这个问题,据说是SQL语句里列的数目和后面的值的数目不一致导致的。
但是我检查了好几遍,sql语句没有写错。

并且用localhost的MySQL可以执行成功,但是用外网的MySQL就会出现这个错误。
而localhost和外网的数据库结构是相同的。

问下为什么会出现这个问题?

------Solutions------


贴SQL语句
另外 貌似你使用了count这个关键字?

------Solutions------


贴SQL语句出来,不然怎么帮你分析。

------Solutions------
//插入数据,新的Order 
MySqlCommand command1 = new MySqlCommand("INSERT INTO orderinfo (CompanyName,DeliveryDate,Driver,Address,Suburb,Area,Postcode,Comment,Status,TotalQty,TotalPrice,OrderDate,CompleteDate) VALUES (?CompanyName,?DeliveryDate,?Driver,?Address,?Suburb,?Area,?Postcode,?Comment,?Status,?TotalQty,?TotalPrice,?OrderDate,?CompleteDate)", conn1);
command1.Parameters.Add("?CompanyName", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = comboBox3.Text.ToString();
command1.Parameters.Add("?DeliveryDate", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss");
command1.Parameters.Add("?Driver", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox5.Text;
command1.Parameters.Add("?Address", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox1.Text;
command1.Parameters.Add("?Suburb", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox7.Text;
command1.Parameters.Add("?Area", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = comboBox4.Text;
command1.Parameters.Add("?Postcode", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox6.Text;
command1.Parameters.Add("?Comment", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox2.Text;
command1.Parameters.Add("?Status", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = "New";
command1.Parameters.Add("?TotalQty", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox3.Text;
command1.Parameters.Add("?TotalPrice", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = textBox4.Text;
command1.Parameters.Add("?OrderDate", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = OrderDate;
command1.Parameters.Add("?CompleteDate", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = CompleteDate;
command1.ExecuteNonQuery();


sql语句在localhost上执行是没问题的,就是在网络上的mysql上有如题的错误。
另外我这个数据库有自增字段,会不会是这个原因?

------Solutions------


自增字段是OrderID,没有在上面的SQL语句中进行插入操作。

------Solutions------


肯定是数据库不一致吧。
你看看外网的数据库,OrderID是否是自增列。。。
仔细检查

------Solutions------


外网的数据库是localhost导入的,应该是一样的吧。

------Solutions------
Your PHP MySQL library version 5.0.51a differs from your MySQL server version 5.1.54. This may cause unpredictable behavior.


我在网络数据库看到了这个东西,是不是这个原因导致的?

------Solutions------


可能是自增段的问题

------Solutions------
command1.Parameters.Add("?DeliveryDate", MySql.Data.MySqlClient.MySqlDbType.VarChar)


这个字段确定是VARCHAR????

------Solutions------


但是在我localhost为什么没有任何问题?
我认为还是网络的mysql版本低的问题吧。

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论