3

SQL Server から数千件のレコードを C# の Access にコピーしようとしています。他の方向は を使用して機能しSqlBulkCopyます。これを逆に行うための場所はありますか?

私は、各レコードの各フィールドをループして、Insert実行に時間がかかるだけでなく、何かが変更された場合に恐ろしくクラッシュする可能性がある凶悪なステートメントを作成しないように最善を尽くしています。

4

1 に答える 1

5

これは、MS Access OleConnection 接続に対して実行されます。

SELECT fld1, fld2 INTO accessTable FROM [sql connection string].sqltable

例えば:

SELECT * INTO newtable 
FROM 
[ODBC;Description=Test;DRIVER=SQL Server;SERVER=server\SQLEXPRESS;UID=uid;Trusted_Connection=Yes;DATABASE=Test].table_1

または追加する

INSERT INTO newtable
SELECT *
FROM [ODBC;Description=Test;DRIVER=SQL Server;SERVER=server\SQLEXPRESS;UID=uid;Trusted_Connection=Yes;DATABASE=Test].table_1;

または FileDSN を使用

INSERT INTO newtable
SELECT * 
FROM [ODBC;FileDSN=z:\docs\test.dsn].table_1;

たとえば、適切なドライバーを見つける必要があります。

ODBC;Driver={SQL Server Native Client 11.0};Server=myServerAddress;Database=myDataBase; Uid=myUsername;Pwd=myPassword; 

http://connectionstrings.comから私には機能しますが、クライアントのバージョンを確認してください。

于 2013-02-01T19:11:01.033 に答える