vb中excute问题

来源:百度知道 编辑:UC知道 时间:2024/05/24 15:40:06
strSql = ""
strSql = strSql & "update 学生信息表 set"
strSql = strSql & " 姓名='" & Trim(txtName) & "'"
strSql = strSql & ",出生日期 ='" & Trim(txtBirth) & "'"
strSql = strSql & ",专业 ='" & Trim(txtSub) & "'"
strSql = strSql & ",性别 ='" & ComboSex & "'"
strSql = strSql & " where 学号='" & Trim(txtNo) & "'"
conn.Execute strSql
我初学vb,这句sql是想修改数据库中某条记录的内容,可是运行总是出现“标准表达式中类型数据不匹配”,错误断点停在“conn.execute strsql”,请问这是怎么回事?
文本,日期,文本,文本,数字

1.如果你用的数据库是access,那么日期的赋值语句要这样:
出生日期=#" & Trim(txtBirth) & "#".
这个是#号是access里面日期赋值用的.
2.如果你的学号的字段是整数类型的,那么要这样写:
学号=" & Trim(txtNo) 。不需要单引号。

strsql = ""
strsql = strsql & "update 学生信息表 set"
strsql = strsql & " 姓名='" & Trim(txtName) & "'"
strsql = strsql & ",出生日期 =#" & Trim(txtBirth) & "#"
strsql = strsql & ",专业='" & Trim(txtSub) & "'"
strsql = strsql & ",性别='" & ComboSex & "'"
strsql = strsql & " where 学号=" & Trim(txtNo)
Conn.Execute strSQL

日期的改成这样
strSql = strSql & ",出生日期 =#" & Trim(txtBirth) & "#"

最后一句改成下面的 把'去掉!~
strSql = strSql & " where 学号=" & Trim(txtNo) & ""

strSql = strSql & "update 学生信息表 set"
strSql = strSql & " 姓名='" & Trim(txtName) & "'&quo