同样的代码,有的能录入有的不能,grade,tel,question,anwser,不能录入解决方法

同样的代码,有的能录入有的不能,grade,tel,question,anwser,不能录入
.Fields("username") = Trim(txtusername.Text) '将txtusername的文本内容添加到数据表中的username列
  .Fields("key") = Trim(txtkey.Text)
  .Fields("rekey") = Trim(txtrekey.Text)
   
  If optmale.Value = True Then
  .Fields("sex") = optmale.Caption
  ElseIf optfemale.Value = True Then
  .Fields("sex") = optfemale.Caption
  End If
   
  .Fields("age") = Trim(txtage.Text)
  .Fields("idnumber") = Trim(txtidnumber.Text)
  .Fields("department") = Trim(cbodepartment.Text)
  .Fields("grade") = Trim(txtgrade.Text)
  .Fields("major") = Trim(txtmajor.Text)
  .Fields("tel") = Trim(txttel.Text)
  .Fields("qq") = Trim(txtqq.Text)
  .Fields("mail") = Trim(txtmail.Text)
  .Fields("question") = Trim(txtquestion.Text)
  .Fields("anwser") = Trim(txtanwser.Text)

------解决方案--------------------
那些可能是数字类型的,去看下这两个域的类型.

你提供给他们的值是字符串...
------解决方案--------------------
.Fields("grade") = Trim(txtgrade.Text)
.Fields("tel") = Trim(txttel.Text)

你上面赋值都是字符型的,看下这两个对应的数据库中 grade 和 tel 字断是不是字符型的,如果是非字符型的你赋值它为字符串那肯定出错。而且要看grade 和 tel 字断是否允许空白内容,因为 txtgrade.Text 和 txttel.Text 中有可能内容为空白,如果你字断设置非空,那也会引起错误。

所以检查数据库中 grade 和 tel 字断是不是字符型,然后设置允许空白内容,应该就可以了。