2011-05-06 37 views
2

我試圖使用SMO創建一個表,並進一步使用SqlBulkCopy對象向該表中注入一堆數據。我可以做到這一點不使用交易是這樣的: -如何在SMO和事務中使用SqlBulkCopy

Server server = new Server(new ServerConnection(new SqlConnection(connectionString))); 
var database = server.Databases["MyDatabase"]; 

using (SqlConnection connection = server.ConnectionContext.SqlConnectionObject) 
{ 
    try 
    { 
     connection.Open(); 
     Table table = new Table(database, "MyNewTable"); 
     // --- Create the table and its columns --- // 

     SqlBulkCopy sqlBulkCopy = new SqlBulkCopy(connection); 
     sqlBulkCopy.DestinationTableName = "MyNewTable"; 
     sqlBulkCopy.WriteToServer(dataTable); 
    } 
    catch (Exception) 
    { 
     throw; 
    } 
} 

基本上,我想執行上述使用的SqlTransaction對象,並承諾它當操作已經完成(或回滾如果失敗)。 任何人都可以幫忙嗎?

回答