visual studio C# 数据类型不匹配

求高人看一下下面的代码Update("update书籍信息set在库状态='在库'where书籍编号='"+textBox1.Text+"'");longdays;day... 求高人看一下下面的代码
Update("update 书籍信息 set 在库状态='在库' where 书籍编号='" + textBox1.Text + "'");
long days;
days = (long)dateTimePicker2.Value.Subtract(dateTimePicker2.Value).TotalDays;
Update("update 借书记录 set 借出天数=" + days + " where (读者编号='" + textBox1.Text + "'and 书籍编号='" + textBox2.Text + "'and 借书日期='" + dateTimePicker1.Text + "')");
if (days <= 28)
MessageBox.Show("还书成功!");
if (days > 28)
MessageBox.Show("对不起,该书已超出借书期限!请缴纳罚金!");
展开
 我来答
百度网友2655a64
2012-06-08 · TA获得超过1534个赞
知道小有建树答主
回答量:661
采纳率:33%
帮助的人:464万
展开全部
你总要告诉你出错是在第几行啊.一般来说这种错误都是出在你在数据库中的字段类型与你代码中传入的值不匹配.
比如:你table里面字段"书"的类型定义为string,而你在代码中传入的值是int型的,就出错了.
追问
数据库中借出天数是长整型
问题应该是出在2~4行,与第三行的代码有关
百度网友302e47538
2012-06-08
知道答主
回答量:8
采纳率:0%
帮助的人:7601
展开全部
我估计应该是你的days是long的原因吧。我不理解你为什么把days定义成long呢。int类型能存的天数就应该不少了吧,估计没人借书会超过int的界限,十年才3650天,应该没人能借十年吧。我估计应该是这个long和数据库中的int不兼容的原因。你修改一下试试吧
追问
试过了,int也不行
数据库中借出天数是长整型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangzhaohuapan
2012-06-08 · 超过38用户采纳过TA的回答
知道答主
回答量:139
采纳率:0%
帮助的人:73.8万
展开全部
1.days = (long)(dateTimePicker2.Value.Subtract(dateTimePicker2.Value).TotalDays);
2.把+days+改成 +days.ToString().Trim()+试试看
3.不行的话,把+dateTimePicker1.Text改成+Convert.ToDateTime(dataTeimPicker1.Text).ToShortDateString()试试,
话说你这么写代码。。。初学者还是?。。更新数据不用参数的啊?这太容易被SQL注入了。。
追问
呃。。数据类型还是不匹配。。
话说我连学都没学,老师就布置project了。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式