gpt4 book ai didi

c# - SMO ServerConnection 事务方法与使用 SqlConnectionObject 属性有区别吗?

转载 作者:行者123 更新时间:2023-11-30 16:33:33 25 4
gpt4 key购买 nike

我正在使用 SMO 在 SQL Server 上创建数据库和表。我想在交易中这样做。这两种这样做的方法是否有效且等效:

第一种方法:

Server server;
//...
server.ConnectionContext.BeginTransaction();
//...
server.ConnectionContext.CommitTransaction();

第二种方法:

Server server;
// ...
SqlConnection conn = server.ConnectionContext.SqlConnectionObject;
SqlTransaction trans = conn.BeginTransaction();
// ...
trans.Commit();

最佳答案

两者是等价的。使用 SqlTransaction 对象允许您将事务放在 using 范围内:

using(SqlTransaction  trn = conn.BeginTransaction ())
{
...
trn.Commit ();
}

这是存在异常时更好的模式。

关于c# - SMO ServerConnection 事务方法与使用 SqlConnectionObject 属性有区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3057570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com