我们有一个可靠运行的Access数据库和UI。 accdb文件存储在我的SQL Server可见的网络驱动器上。我想将这些数据链接到我的SQL Server。在Access数据库中发生的CRUD(通过Access UI),我想显示在SQL数据库中。在这种情况下,Access DB是主服务器,而SQL Server是从服务器。这可能吗?将数据从Access连接到SQL Server
感谢
我们有一个可靠运行的Access数据库和UI。 accdb文件存储在我的SQL Server可见的网络驱动器上。我想将这些数据链接到我的SQL Server。在Access数据库中发生的CRUD(通过Access UI),我想显示在SQL数据库中。在这种情况下,Access DB是主服务器,而SQL Server是从服务器。这可能吗?将数据从Access连接到SQL Server
感谢
你可以通过ODBC 链接的SQL Server表到你的Access应用程序。
然后,在此创建查询和/或代码,将Access表中的数据附加/更新到SQL Server表。
我认为这通常是通过其他方式完成;访问FE和SQL Server BE,但是,您可以按照您所描述的方式进行操作。
你应该先解决一些基本问题。
https://www.mssqltips.com/sqlservertip/2484/import-data-from-microsoft-access-to-sql-server/
现在,推,或拉,数据,创建一个存储过程,无论你从Access需要吸吮。
CREATE PROCEDURE dbo.uspCopyTable
AS
INSERT INTO
dbo.mytable (myfield)
SELECT
myfield
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'c:\mypath\mydb.mdb';'admin';'mypwd', mytable)
GO
fire it off by something like this
dim cn as adodb.connection
set cn = new adodb.connection
cn.open "Provider=sqloledb;" & _
"Data Source=myServerName;" & _
"Initial Catalog=myDatabaseName;" & _
"Integrated Security=SSPI"
cn.execute "dbo.uspCopyTable"
或者,使用VBA将Access中的数据推送到Excel中。
Make new table:
Dim strsql As string
strSql = "SELECT * Into YourNewAccessTableName FROM ExistingSqlTableName"
Currentdb.execute(strSql)
Insert into existing Access table (assume fieldnames are the same:
Dim strsql As string
strSql = "INSERT Into YourAccessTableName SELECT * FROM ExistingSqlTableName"
Currentdb.execute(strSql)
您最好将您的表迁移到实际的SQL Server表中,然后使用Access数据库中的链接表管理器将其拉入。另一种方式稍微偏离。 – JNevill
它需要多快显示在SQL Server中? –