ADO数据库用rs.Open "MyTable", 语句时出错,有原码

lzw858 2006-01-13 05:02:53
Dim cat As New ADOX.Catalog ’不用cat用另外一个名字也可以
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim pstr As String ’定义该变量是为了后面的书写方便
为了更灵活地创建数据库,我们可以在窗体中加入一个通用对话框、一个DataGrid控件,三个命令按钮,它们的标题分别是:创建数据库和表、查看、更新。通用对话框的作用是给用户输入数据库文件名和决定数据库的存放位置。 “创建数据库和表”命令按钮对应的代码是:
Private Sub Command1_Click()
Dim fm As String ‘fm变量用来获取用户输入的文件名
CommonDialog1.Filter = "MDB文件(*.mdb)|*.mdb|AllFiles(*.*)|*.*|"
CommonDialog1.FilterIndex = 1
CommonDialog1.InitDir = "D:\Jthpaper"
CommonDialog1.Flags = 6
CommonDialog1.Action = 2
If CommonDialog1.FileName = "" Then
MsgBox "你必须输入一个文件名,请重新保存一次!"
Exit Sub
Else
fm = CommonDialog1.FileName
End If
pstr = "Provider=Microsoft.Jet.OLEDB.4.0;" ’不能把这里的4.0改为3.51
pstr = pstr & "Data Source=" & fm
cat.Create pstr ‘创建数据库
Dim tbl As New Table
cat.ActiveConnection = pstr
tbl.Name = "MyTable" ‘表的名称
tbl.Columns.Append "编号", adInteger ‘表的第一个字段
tbl.Columns.Append "姓名", adVarWChar, 8 ‘表的第二个字段
tbl.Columns.Append "住址", adVarWChar, 50 ‘表的第三个字段
cat.Tables.Append tbl ‘建立数据表
conn.Open pstr
rs.CursorLocation = adUseClient


'====================================================================================
rs.Open "MyTable", conn, adOpenKeyset, adLockPessimistic
ADO数据库用rs.Open "MyTable", 语句时出错
说SQL期待不足缺少 ADD。。,EDL。。,就是添加,删除,修改之类的
'====================================================================================



rs.AddNew ‘往表中添加新记录
rs.Fields(0).Value = 9801
rs.Fields(1).Value = "孙悟空"
rs.Fields(2).Value = "广州市花果山"
rs.Update
End Sub
...全文
128 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Freshmen007_Bug 2006-01-14
  • 打赏
  • 举报
回复
, adOpenDynamic, adLockOptimistic
faysky2 2006-01-13
  • 打赏
  • 举报
回复
rs.Open "MyTable", conn, adOpenKeyset, adLockPessimistic,adCmdTable
Gutta 2006-01-13
  • 打赏
  • 举报
回复
这说明你建立表根本没有成功。

还有在Rs.Open 时,只要这样就可以用表名而不是SQL语句,当然weiweiplay(虚幻) 的方式也是可以的。
Rs.Open "Select * From MyTable", conn, adOpenDynamic, adLockOptimistic, adCmdTable
lzw858 2006-01-13
  • 打赏
  • 举报
回复
换成SQL语句说找不到指定的表
zhzhq800204 2006-01-13
  • 打赏
  • 举报
回复
把"MyTable"换成SQL语句试试
weiweiplay 2006-01-13
  • 打赏
  • 举报
回复
rs.Open "Select * From MyTable", conn, adOpenDynamic, adLockOptimistic
weiweiplay 2006-01-13
  • 打赏
  • 举报
回复
rs.Open "Select * From " & MyTable, conn, adOpenDynamic, adLockOptimistic

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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