
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("对不起,该书已超出借书期限!请缴纳罚金!"); 展开
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("对不起,该书已超出借书期限!请缴纳罚金!"); 展开
展开全部
你总要告诉你出错是在第几行啊.一般来说这种错误都是出在你在数据库中的字段类型与你代码中传入的值不匹配.
比如:你table里面字段"书"的类型定义为string,而你在代码中传入的值是int型的,就出错了.
比如:你table里面字段"书"的类型定义为string,而你在代码中传入的值是int型的,就出错了.
追问
数据库中借出天数是长整型
问题应该是出在2~4行,与第三行的代码有关
展开全部
我估计应该是你的days是long的原因吧。我不理解你为什么把days定义成long呢。int类型能存的天数就应该不少了吧,估计没人借书会超过int的界限,十年才3650天,应该没人能借十年吧。我估计应该是这个long和数据库中的int不兼容的原因。你修改一下试试吧
追问
试过了,int也不行
数据库中借出天数是长整型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.days = (long)(dateTimePicker2.Value.Subtract(dateTimePicker2.Value).TotalDays);
2.把+days+改成 +days.ToString().Trim()+试试看
3.不行的话,把+dateTimePicker1.Text改成+Convert.ToDateTime(dataTeimPicker1.Text).ToShortDateString()试试,
话说你这么写代码。。。初学者还是?。。更新数据不用参数的啊?这太容易被SQL注入了。。
2.把+days+改成 +days.ToString().Trim()+试试看
3.不行的话,把+dateTimePicker1.Text改成+Convert.ToDateTime(dataTeimPicker1.Text).ToShortDateString()试试,
话说你这么写代码。。。初学者还是?。。更新数据不用参数的啊?这太容易被SQL注入了。。
追问
呃。。数据类型还是不匹配。。
话说我连学都没学,老师就布置project了。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询