Ms access 在带有access 2007的visual basic 6.0中,没有为一个或多个必需参数提供值
我试图在access 2007数据库中进行简单的选择,如下所示:Ms access 在带有access 2007的visual basic 6.0中,没有为一个或多个必需参数提供值,ms-access,vba,ms-access-2007,Ms Access,Vba,Ms Access 2007,我试图在access 2007数据库中进行简单的选择,如下所示: sqlSelect = "select * from Datos_De_Quejas where Ape_Pax = " & textape.Text & " " RS.Open sqlSelect, cnn, adOpenStatic, adLockOptimistic 该表称为Datos_De_Quejas,列Ape_Pax和cnn是连接 我检查了100次拼写,它看起来是正确的,但它给了我以下错误 没有为一
sqlSelect = "select * from Datos_De_Quejas where Ape_Pax = " & textape.Text & " "
RS.Open sqlSelect, cnn, adOpenStatic, adLockOptimistic
该表称为Datos_De_Quejas,列Ape_Pax和cnn是连接
我检查了100次拼写,它看起来是正确的,但它给了我以下错误
没有为一个或多个必需参数提供值
以下select在相同的过程中工作正常:
sqlSelect = "select * from Datos_De_Quejas where ID = " & textnro.Text & " "
RS.Open sqlSelect, cnn, adOpenStatic, adLockOptimistic
我看不出我做错了什么。
谢谢大家! 我猜ID是一个整数字段,而Ape_-Pax是一个varchar 尝试: 用单引号
此外,构建这样的SQL语句——特别是与来自用户输入字段的文本一起使用时——是一个非常糟糕的主意。使用参数化查询select*from Datos_De_Quejas,其中Ape_Pax=?并将文本作为参数传递。textape和textnro的值是多少?是否尝试了textnro.Value。文本属性仅对具有焦点的控件可用。如果需要,您不需要属性。value是默认值,因此me.textnro可以。在MS Access中,textape.Text仅在textape具有焦点时可用,因此可能存在问题。此外,您需要警惕包含单引号的文本。
"select * from Datos_De_Quejas where Ape_Pax = '" & textape.Text & "' "