设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 4083|回复: 11
打印 上一主题 下一主题

[ADO/DAO] ACCESS如何使用ADO读取Sql Server数据存放到表里

[复制链接]
跳转到指定楼层
1#
发表于 2017-6-17 17:13:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教,ACCESS如何使用ADO读取Sql Server数据库表里的记录放到本地ACCESS表里?sql数据库名:ca  
sql数据表名:dbo.a
ACCESS表名:SQL表
dbo.a字段与SQL表字段一致如下3个字段名称:
id,name,gender
下面的操作只能把dbo.a里的第一条记录重复写入“SQL表”里,都是相同记录,数据记录指针没有往下走。
如果能一次性从dbo.a里写入所有记录到sql表里也可以。

-Dim cnn As New ADODB.Connection, rs As New ADODB.Recordset
-Dim rs1 As New ADODB.Recordset
-Dim i As Long
-cnn = "Provider=SQLOLEDB;Persist Security Info=true;Data Source=127.0.0.1;User -ID=sa;Password=123456;Initial Catalog=ca"
-cnn.Open
-rs.CursorLocation = adUseClient
-rs.Open "dbo.a", cnn, adOpenKeyset, adLockOptimistic
-For i = 1 To rs.RecordCount
-rs1.Open "SQL表", CurrentProject.Connection, adopenkeyest, adLockOptimistic
-rs1.AddNew
- rs1("id") = rs(0)
- rs1("name") = rs(1)
- rs1("gender") = rs(2)
-rs1.Update
-rs1.MoveNext
-rs1.Close
-Set rs1 = Nothing
-Next i
-rs.Close
-Set rs = Nothing





分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
发表于 2017-6-17 17:20:26 | 只看该作者
可以用代码链接SQL Server表,然后把链接表数据写入access的表里面,再把链接表删除。
3#
发表于 2017-6-17 17:36:21 | 只看该作者
rs1.Add
回复

使用道具 举报

点击这里给我发消息

4#
发表于 2017-6-17 17:48:51 | 只看该作者
fans版主已告诉你了。
-rs1.AddNew
改为 rs1.add 即可以了

要先理解了代码才能改代码哦
5#
 楼主| 发表于 2017-6-17 18:07:28 | 只看该作者
tmtony 发表于 2017-6-17 17:48
fans版主已告诉你了。
-rs1.AddNew
改为 rs1.add 即可以了

你好,tmtony
改了后提示:方法和数据成员未找到

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
发表于 2017-6-17 21:35:26 | 只看该作者
打字比你快 发表于 2017-6-17 18:07
你好,tmtony
改了后提示:方法和数据成员未找到

rs1.AddNew
7#
发表于 2017-6-17 21:36:27 | 只看该作者
没毛病。
不过我还是建议把打开记录集放在for循环的外面。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
8#
 楼主| 发表于 2017-6-17 21:40:05 | 只看该作者

原代码就是:rs1.AddNew  ,但这样使用后,只能得到dbo.a表里的第一条数据且这条数据都是重复的写入ACCESS的“SQL表”里,正确的应该是不同记录。
9#
发表于 2017-6-17 21:43:11 | 只看该作者
打字比你快 发表于 2017-6-17 21:40
原代码就是:rs1.AddNew  ,但这样使用后,只能得到dbo.a表里的第一条数据且这条数据都是重复的写入ACCES ...

没搞懂rs1.MoveNext是什么意思。
我觉得,应该是rs.MoveNext
10#
 楼主| 发表于 2017-6-17 21:55:44 | 只看该作者
roych 发表于 2017-6-17 21:43
没搞懂rs1.MoveNext是什么意思。
我觉得,应该是rs.MoveNext

是的,应该是rs.MoveNext,多谢了。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-20 12:01 , Processed in 0.095305 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表