【发布时间】:2011-08-20 01:17:47
【问题描述】:
我正在尝试使用 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 对象执行上述操作,并在操作完成时提交它(或者如果失败则回滚)。 有人可以帮忙吗?
【问题讨论】: