VB的数据库问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 16:39:44
Data1.Recordset.FindFirst "学号 ='" & Combo1.Text & "'"
请问为什么还要在"学号 ='" & Combo1.Text & "'"单引号里套双引号,如果不写可不可以。还有如果把"学号 ='" & Combo1.Text & "'"改成"学号 ='" Combo1.Text "'"行不????
请两个一起会答下

不写不行的,因为条件中需要有单引号。

"学号 ='" & Combo1.Text & "'"
"学号 ='"是字符串,在SQL中是:学号 ='
& Combo1.Text &中&是字符串连接符,Combo1.Text是变量,是连接变量的,因此&不能省略;
"'"在SQL中是:单引号 '
如果你的Combo1.Text值是“学号24058”,那么SQL的值是:学号='学号24058'

这个问题是这样的 学号 =' 包括单引号是一个字符串,是要传入到SQL中执行的语句 & 符号是连接字符串的连接符,意思是连接两个字符串的

例如 “A”&“B” = “AB”

如果你的学号是数字的,可以不用加单引号 ' ,但是如果有字母,则必须加。

改成"学号 ='" Combo1.Text "'"当然不行,去掉单引号可以 但是去掉
字符串的连接符号& 你在编译的时候会报错。
楼主可以参考看看 SQL的一些书

第一个问题:这里的单引号是Data1.Recordset.FindFirst的语法格式,而里面的双引号是因为你的学号是字符型,在执行这条语句时需要将COMBO1的值用引号引起来,所以要加双引号。
第二问题:不能像你那样改,在这里Data1.Recordset.FindFirst后面实际是两个字符串和一个变量,需要用&将它们连接起来,在执行时才能形成一个语句