做过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()参数的意义??

...全文
33 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
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&"'"


1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧