Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

从一个数据库中表里的数据插入到另一个数据库中的表里

随心飞去  发表于:2017-12-26 21:32:05  
复制

在一个窗体上的按钮中,写入代码,实现如下功能:
数据库A的表名:aa,数据库B 的表名:bb。将A数据库的aa表中的数据插入到B数据库bb表中。代码怎样写?请给予赐教。先在此谢过。

 

Top
yihui 发表于:2017-12-27 10:51:26
具体描述下 

随心飞去 发表于:2017-12-27 10:52:56
补充一下,是在B数据库一个窗体上设置一个按钮来进行插入或者是导入数据.从A数据库AA表把数据插入或者导入B数据库中的BB表中

随心飞去 发表于:2017-12-27 21:01:45

看了很多贴子,都无法解决这个问题,有的方法很复杂,又 不适用,只想了一招,用最简单的方法来实现,如果各位老师有更好的、更简单方法,请给出最佳方法。代码如下:

 从一个数据的表中提取数据插入到另一个数据库的表中方法     

Private Sub Command4_Click()
DBEngine.OpenDatabase CurrentProject.Path & "\A.accdb", False, False, ";pwd=" & "123" & ""   ' 定义目标数据库的密码
Dim db As Database  '定义
Set db = OpenDatabase(CurrentProject.Path & "\A.accdb", False, False, ";pwd=" & "123")   '定义目标数据库的密码在操作时,不用再次输入,自动赋予
DoCmd.SetWarnings False '  执行下面查询时,屏蔽掉提示消息
DoCmd.TransferDatabase acImport, "Microsoft Access", CurrentProject.Path & "\A.accdb", acTable, "AA", "GG", False, False '先生成一张临时表,用来提取数据
txt = "Insert INTO BB Select * FROM GG"   '从临时表中提取数据插入到正式表中
DoCmd.RunSQL txt '执行提取数据的追加命令
DoCmd.DeleteObject acTable, "GG" '删除临时表

End Sub




西出阳关无故人 发表于:2017-12-28 10:05:09

直接查询法,不知道是不是更简单:

docmd.runsql "SELECT * INTO [;DATABASE=E:\lxt\access功能测试汇总\新建数据库B.ACCDB;PWD=123].BB FROM 表1;"

垮库查询数据:

SELECT * FROM [;DATABASE=E:\lxt\access功能测试汇总\新建数据库B.ACCDB;PWD=123].BB;

其中另一个数据库的文件路径为“E:\lxt\access功能测试汇总\新建数据库B.ACCDB”、数据库密码为“123”

如果另一个数据库没有登录密码,则:

SELECT * FROM [E:\lxt\access功能测试汇总\新建数据库B.ACCDB].BB;




随心飞去 发表于:2017-12-28 12:07:41

谢谢,

docmd.runsql "SELECT * INTO [;DATABASE=E:\lxt\access功能测试汇总\新建数据库B.ACCDB;PWD=123].BB FROM 表1;"

这个句子是向外部数据库导出(生成新表,然后插入数据)
DoCmd.RunSQL "SELECT * INTO [;DATABASE=C:\Documents\A\update.accdb;PWD=123].BB FROM 03焊材入库检查记录;"

而不是从外部数据库的表中提取全部数据,向本数据库中的表插入数据.

改成以下可以向本数据库中了导入数据(生成新表,然后插入数据)

DoCmd.RunSQL "SELECT * INTO BB FROM [;DATABASE=C:\Documents\A\update.accdb;PWD=123].AA;"


可是在同一文件夹下,路径用CurrentProject.Path & "\update.accdb",始终修改不成功,能否给予赐教?




西出阳关无故人 发表于:2017-12-28 16:10:03
DoCmd.RunSQL "SELECT * INTO BB FROM [;DATABASE=" & CurrentProject.Path & "\update.accdb;PWD=123].AA;"



随心飞去 发表于:2017-12-29 12:38:13
谢谢,一条语法更加简单实用

总记录:7篇  页次:1/1 9 1 :