如题,如果我的textbox控件没输入值,或是datepicker控件没选择值,则向数据库插入数据报错,数据库中相应字段允许null值.求帮忙!源码和数据库文件我已上传到360云盘中:
http://yunpan.cn/QnMiLaEs5xTfJ

解决方案 »

  1.   

    那就判断下textbox控件没输入值,或是datepicker控件是否为空,为空的时候赋值为“”,或者datatime.today然后再执行ADO就是
      

  2.   

    我将textbox留空,然后用if==""判断,如果为空,则向sqlserver插入DBNULL.value,仍然报错
      

  3.   


    不能赋""值,我的本意是,在数据库中,null值就是null值,但是,赋DBNULL.value,为什么还报错?不解
      

  4.   


    关键代码是这段:
     stu.Name = (string)toDBvalue(txtName.Text);
     stu.Score = (double?)toDBvalue(Convert.ToDouble(txtScore.Text));
     stu.Gender = (string)toDBvalue(txtGender.Text);
     stu.Birthday = (DateTime?)toDBvalue(Convert.ToDateTime(datePicker.SelectedDate.Value));score和birthday在数据库中对应的字段允许null,但是我用DBNULL.value插入空值,就报错.如果赋上值,则不会
      

  5.   


    关键代码是这段:
     stu.Name = (string)toDBvalue(txtName.Text);
     stu.Score = (double?)toDBvalue(Convert.ToDouble(txtScore.Text));
     stu.Gender = (string)toDBvalue(txtGender.Text);
     stu.Birthday = (DateTime?)toDBvalue(Convert.ToDateTime(datePicker.SelectedDate.Value));score和birthday在数据库中对应的字段允许null,但是我用DBNULL.value插入空值,就报错.如果赋上值,则不会错误贴出来。检查存储过程;断点调试.