C#中的sql语句写错了,错误提示标准表达式中数据类型不匹配,代码在下面。
stringsql=string.Format("INSERTINTOTeacher(TPwd,TName,TGender,Birthday,TAge,IDno,Type...
string sql = string.Format("INSERT INTO Teacher (TPwd,TName,TGender,Birthday,TAge,IDno,Type,RetireTime,Address,Resume) VALUES ('{0}', '{1}', '{2}', {3}, '{4}', '{5}', '{6}', '{7}','{8}','{9}')", pwd1, name, sex, birthday, age, id, type, time, address, resume); int n = db.Operate(sql); if (n > 0) { //查出此学生的学号 sql = "select max(TID) from Teacher"; int TID = Convert.ToInt32(db.GetScalar(sql)); txtTID.Text = TID +""; MessageBox.Show("添加成功", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information); //清空 btnClear_Click(null, null); }
展开
4个回答
展开全部
这个可能需要知道你更新的每个字段的类型是不是和你的更新值的类型一致,比如说数值类型的更新成数值以外的了,字符串类型的没有加左右单引号,日期类型的更新的不是日期等等,可能需要你耐心对一遍
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只有字符型和日期型的字段值才能在左右加单引号,你确认一下你insert的那些字段在数据库中是否全是字符型的。如果是数字那就要把'{0}'这种格式的去掉单引号
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
db.Operate(sql)这个db的方法operate返回的是什么类型j?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这是添加啊 没这么麻烦吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询