请教该如何修改?

hcyzs 2000-01-15 05:25:00
想实现根据gz199912.mdb中gzsj表中字段l1更新gz20001.mdb中gzsj表中字段l1的值,为何下段程序出错,请教该如何修改?
Dim myworkspace As Workspace, mydatabase1 As Database, mydatabase2 As Database, mytable1 As Recordset, mytable2 As Recordset
Private Sub Command1_Click()
d_mybasename1 = App.Path & "\gz199912.mdb"
d_mybasename2 = App.Path & "\gz20001.mdb"
Set myworkspace = DBEngine.Workspaces(0)
Set mydatabase1 = myworkspace.OpenDatabase(d_mybasename1)
Set mydatabase2 = myworkspace.OpenDatabase(d_mybasename2)
Set mytable1 = mydatabase1.OpenRecordset("gzsj", dbOpenDynaset)
Set mytable2 = mydatabase2.OpenRecordset("gzsj", dbOpenDynaset)
mydatabase2.Execute "update gzsj set l1=mytable1.l1 where name=mytable1.name" '运行至此,显示错误:实时错误 '3061',参数不足,期待是2。
mytable1.Close
mytable2.Close
mydatabase1.Close
mydatabase2.Close
End Sub
...全文
211 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ltp3 2000-01-17
  • 打赏
  • 举报
回复
试试
mydatabase2.Execute "update gzsj set l1='" & mytable1.l1 & "' where name='" & mytable1.name" & "'"
::如果l1或name不是字符串类型的去掉’
jing 2000-01-17
  • 打赏
  • 举报
回复
name=mytable1.name类形有问题?
Try
"name= '" & IIF(ISNull(Cstr(mytable.name)),Cstr(mytable.name)),为空字符如何处理) &"'"
Tyro 2000-01-17
  • 打赏
  • 举报
回复
只能用循环一条条的改,象你那样用一条语句改完恐怕办不到!
Firing_Sky 2000-01-15
  • 打赏
  • 举报
回复
在表名前面再加一个数据库名试试。
gz 2000-01-15
  • 打赏
  • 举报
回复
丢参数了

7,763

社区成员

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

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