2017-08-28 13 views
0

信頼性の高いAccessデータベースとUIがあります。 accdbファイルは、私のSQL Serverに見えるネットワークドライブに保存されています。私はそのデータをSQL Serverにリンクしたいと思います。 (アクセスUIを介して)アクセスDBで発生するCRUD、私はSQLデータベースに表示したいと思います。この状況では、Accessデータベースはマスタであり、SQL Serverはスレーブです。これは可能ですか?AccessからSQL Serverへのデータのリンク

おかげ

+1

実際のSQL Serverテーブルに移行する方がよい場合があります。次に、Accessデータベースのリンクテーブルマネージャを使用してそれらを取得してください。他の方法は少しです。 – JNevill

+0

SQL Serverにどのくらい表示する必要がありますか? –

答えて

1

あなたのAccessアプリケーションにODBCを経由してSQL Serverテーブルをリンクすることができます。

次に、AccessテーブルのデータをSQL Serverテーブルに追加または更新するクエリおよびコードを作成します。

0

私はそれが他の方法で行われていると思います。 FEとSQL Server BEにアクセスしてください。ただし、あなたが説明したようにすることができます。

まず、いくつかの基本的なことをまず考えてください。今

https://www.mssqltips.com/sqlservertip/2484/import-data-from-microsoft-access-to-sql-server/

https://support.office.com/en-ie/article/Import-or-link-to-data-in-an-SQL-Server-database-a5a3b4eb-57b9-45a0-b732-77bc6089b84e

、押したり、引っ張っ、データを、ストアドプロシージャを作成し、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) 
関連する問題