次のコードを使用して、SQL ServerテーブルをAccessファイルにコピーします。ローカルSQL Server Expressデータベース(ローカルエクスプレスエリアでSSMSを使用してDBを作成)を選択しても問題はありませんが、ローカルファイルに問題があります。このエラーが表示さC#ローカルSQL ServerファイルからAccess .mdbにデータをコピー
Database='3b26bee4-2cdb-4d39-8400-7abb3debe802'
Database='3b26bee4-2cdb-4d39-8400-7abb3debe802.mdf'
Database='c:\user\temp\uniqueFolder\3b26bee4-2cdb-4d39-8400-7abb3debe802.mdf'
のVisual Studio:
追加
//Error When change to file address or file OleDbCommand AccessCommand = new OleDbCommand( @"SELECT * INTO "+desName+" FROM ["+sourceName+ @"] IN '' [ODBC;Driver= {ODBC Driver 11 for SQL Server};Server="[email protected]"(localdb)\MSSQLLocalDB; Database='3b26bee4-2cdb-4d39-8400-7abb3debe802';Trusted_Connection=yes];", AccessConn);
私はコードの下にそれぞれのデータベースを変更:
//Using ACE.OLEDB : OleDbConnection AccessConn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="+Setting.UniqeFolderPath+"\\"+Setting.UniqeId+".mdb"); AccessConn.Open(); //New table, using SELECT INTO OleDbCommand AccessCommand = new OleDbCommand( @"SELECT * INTO "+desName+" FROM ["+sourceName+ @"] IN '' [ODBC;Driver={ODBC Driver 11 for SQL Server};Server="[email protected]"(localdb)\MSSQLLocalDB; Database='LocalDB';Trusted_Connection=yes];", AccessConn); AccessCommand.ExecuteNonQuery(); AccessConn.Close();
問題は、私は、データベースを変更したときに起こります情報:ODBC - '{ODBC Driver 11 for'への接続SQL Server}(localdb)\ MSSQLLocalDB 'が失敗しました。
SSMSで作成したローカルエクスプレスDBに変更すると、テーブルコピーからアクセスファイルに変更されます。
OleDbCommand AccessCommand = new OleDbCommand(
@"SELECT * INTO "+desName+" FROM ["+sourceName+ @"] IN '' [ODBC;Driver=
{ODBC Driver 11 for SQL Server};Server="[email protected]"(localdb)\MSSQLLocalDB;
Database='LocalDB';Trusted_Connection=yes];", AccessConn);
問題:.mdb
flieにアクセスするためのSQL Serverのローカルファイルからデータをコピーする方法?
注:私は、SQL Server 2016のExpressを使用して(localdb)\MSSQLLocalDB
SQL Server Management Studioには、Accessを含むさまざまな形式のデータをエクスポートできるデータのエクスポートウィザードが既に用意されています。あとでパッケージを保存することもできます –
なぜ* ODBC *を使用していますか?なぜネイティブのSqlConnectionですか? –
@PanagiotisKanavos [OK]を知っていますが、プログラムでデータを 'Export'したいです。 –