我需要有人点我到正确的方向,我有一个由HP设备更新MS Access数据库,我必须把它与SQL Server 2008中同步。
我有几个想法,我想知道你怎么看待这个问题:
- 有没有像上访问触发器什么? 如果是的话我可以与SQL Server comunicate?
- 有没有办法使用VBA因此获得告诉我的VBA宏或任何使SQL Server上的更新?
- 有没有从VB 6连接到SQL Server 2008一个简单的方法?
- 使用在后台运行,并检查DB在X分钟或秒的脚本。
任何其他的想法或建议都非常欢迎。
感谢,并像往常一样遗憾的英语。
你可以尝试MS Access数据库链接到SQL服务器,
现在,您可以查询从在MS访问SQL Server数据。
我不知道在MS ACCESS trigers但你可以实现MS SQL以周期性计数或选择数据的一些循环的cheking新的。
为了让链接服务器的SQL MGM Studio中的对象资源管理器 - >服务器对象 - >链接服务器 - >右键 - >新建链接的服务器,然后在新的查询简单调用任何如表后
Select * from [linked server].dbo.mytable
在MS SQL有WAITFOR命令 ,你可以实现
只是几个点添加到adopilot的答案
1)Access 2010中确实有触发器和存储过程,但他们更多的是关于本机访问/ Jet表,而不是链接SQL表,我相信。
2&3)如果你想VB6或VBA连接到随后的SQL服务器的技术做到这一点被称为ADO例如这里是一些代码来打开一个连接并运行SQL语句
Dim dbCon as NEW ADODB.Connection
dbCon.ConnectionString = strSQL_con_string
dbCon.Provider = "sqloledb"
dbCon.Open
dbCon.Execute “UPDATE tblFoo SET bar=5 WHERE Foo=1”
dbCon.Close
4)你可以做到这一点客户端与定时器/等待在VB6 /访问事件或做服务器端用SQL作业,不知道这是最适合你的情况给予提供的信息有限
您可以指代SQL Server数据库或在您的SQL的MS Access数据库联机:
UPDATE SQLTable (ID, Stuff)
SELECT ID, Stuff
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'c:\External\MyAccess.mdb';'admin';'', Table1)
- 从databasejournal
您可以到SQL Server的连接使用执行ADO此查询
- 连接字符串
你也可以做同样的从Access与ODBC结束
Dim cn As New ADODB.Connection
scn = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=" _
& DBFullName
cn.Open scn
s = "INSERT INTO [ODBC;Description=TEST;DRIVER=SQL Server;" _
& "SERVER=Server\Instance;Trusted_Connection=Yes;" _
& "DATABASE=test].Table2 (ID, Stuff) SELECT ID, Stuff FROM Table1"
cn.Execute s
您可以使用VBScript或其他合适的脚本运行的ADO,并使用Windows任务计划程序来踢脚本关闭在适当的时间间隔。 这不是没有痛苦。