私はc#でSQLサーバースクリプトを実行するためにこのコードを書いています:
string sqlConnectionString = "Data Source=.;Initial Catalog=SERVERRAREPORT;Integrated Security=True";
//string sqlConnectionString = "Data Source=(local);Initial Catalog=AdventureWorks;Integrated Security=True";
FileInfo file = new FileInfo("d:\\behzadBULK.sql");
string script = file.OpenText().ReadToEnd();
SqlConnection conn = new SqlConnection(sqlConnectionString);
Microsoft.SqlServer.Server server = new Microsoft.SqlServer.Server(new ServerConnection(conn));
server.ConnectionContext.ExecuteNonQuery(script);
そしてbehzadBULK.sql
私はこのコードを書きます:
BULK INSERT TEMPO
FROM 'd:\3.csv'
WITH(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n',
CODEPAGE = '1256'
);
一括挿入に、ファイル名から設定されたパラメータから、そのパラメータは静的ですが、c#アプリケーションでブラウザでファイルを参照し、ファイルを選択して、パラメータから一括挿入するようにファイル名を設定します。
私の計画はこれです:
これはバルクインサートの構造です:
BULK INSERT
[ database_name. [ schema_name ] . | schema_name. ] [ table_name | view_name ]
FROM 'data_file'
[ WITH ...
ファイル名は静的でなければならないため、次のことができます。
DECLARE @sql NVARCHAR(4000) = 'BULK INSERT TEMPO FROM ''' + @FileName + ''' WITH ( FIELDTERMINATOR ='','', ROWTERMINATOR =''\n'' )';
EXEC(@sql);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加