做过vb+access数据库编程的请进:

gogogo168 2003-04-08 07:51:00
我用vb+access编数据库,有个error不知道怎么回事,请教各位前辈:
Dim db As Database
Set db = Workspaces(0).OpenDatabase(App.path + "\users.mdb")
Dim qur As QueryDef
Set qur = db.CreateQueryDef("检索user")
qur.Sql = "select 密码 from users where 用户名 = text1.Text"
Dim rec As Recordset
Set rec = db.OpenRecordset("检索user")

最后一句出现错误提示:Too few parameters.Expected 1.
问:1、怎么回事??为什么会有错,不是后面的参数可以省略吗?
2、OpenRecordset()参数的意义??

...全文
14 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
KPANZER 2003-04-10
上面的,我可没用括号就能读出来,难道我们用的不是同一个公司出的VB吗?
可奇怪了,关注!
("检索user")你的表是“检索user“还是“USER”?
回复
KPANZER 2003-04-09
试试这个
qur.SQL = "select * from info where name= '" & Trim(text1.text) & "'"


回复
KFZLG 2003-04-09
Sorry!用错了括号,不应是中文状态下的括号。
qur.Sql = "select 密码 from users where 用户名 = text1.Text"
改为:
qur.Sql = "select 密码 from users where (用户名 = '" & text1.Text & "' )"
注意字符间的空格!
回复
KFZLG 2003-04-09
qur.Sql = "select 密码 from users where 用户名 = text1.Text"
改为:
qur.Sql = "select 密码 from users where(用户名 = '" & text1.Text & "' )"
注意字符间的空格!
回复
gogogo168 2003-04-09
OpenRecordset("select user from users")也就是说要跟个sql语句
我也尝试过了,还是不行啊???苦恼ing!!!!
请求援助!!!
回复
gogogo168 2003-04-09
我已经做了如下修改,还是有问题啊!!??
Dim db As Database
Set db = Workspaces(0).OpenDatabase(App.path + "\users.mdb")
Dim qur As QueryDef
Set qur = db.CreateQueryDef("检索user")
qur.Sql = "select 密码 from users where 用户名 = '" & Text1.Text & "'"
'上句中的users是users.mdb中的一个表,users表只有两个字段,是"用户名"和"密码"
Dim rec As Recordset
Set rec = db.OpenRecordset("检索user")

最后一句出现错误提示:类型不匹配!

注:我用users.mdb数据库,用来存放用户的登录信息及用户的设置的一些参数
回复
gogogo168 2003-04-08
多谢大家了!如果,你们的解释是正确的,小弟我一定加分!!!!
回复
chenyu5188 2003-04-08
qur.Sql = "select 密码 from users where 用户名 = text1.Text"
这一句语法有问题。
在VB中写SQL要这样写:
qur.Sql = "select 密码 from users where 用户名 ='" & text1.Text & "'"
回复
pcwak 2003-04-08
UP
回复
jingxuanhuang 2003-04-08
你试一下啦,成功了可要给分那
回复
zhangyp 2003-04-08
1.qur.Sql = "select 密码 from users where 用户名 = text1.Text" 首先肯定有错
改为qur.Sql = "select 密码 from users where 用户名 = '" & text1.Text &"'
2.Set rec = db.OpenRecordset("检索user")也有错
OpenRecordset("select user from users")也就是说要跟个sql语句
回复
jingxuanhuang 2003-04-08
Set db = Workspaces(0).OpenDatabase(App.path + "\users.mdb")
上面这句代码中的参数要省掉的话还是要设为空
Set db = Workspaces(0).OpenDatabase(App.path + "\users.mdb" ,"" ,"")
回复
gogogo168 2003-04-08
我数据库知识很有限,能不能请这位大侠详细解释一下啊??多谢!!!感激不尽!!!
回复
j4sxw 2003-04-08
改用ADO吧,
dim strTxt as string
strTxt=trim(text1.text)
qur.sql="select 密码 from users where 用户名 = '"&strtxt&"'"


回复
相关推荐
发帖

1187

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2003-04-08 07:51
社区公告
暂无公告