我一直在审查ServiceStack.OrmLite.SqlServer
库并且它工作得非常好但我们正在查看生成的SQL,我们想在我们的select语句中添加一个nolock提示但是找不到任何关于这个的文档?< / p>
当前:
exec sp_executesql N'SELECT "GroupID", "Name", "ShortName", "GroupTypeID", "ParentGroupId" FROM "Group" WHERE "GroupID" = @GroupID',
N'@GroupID int', @GroupID = 5543
想:
exec sp_executesql N'SELECT "GroupID", "Name", "ShortName", "GroupTypeID", "ParentGroupId" FROM "Group" **WITH (NOLOCK)** WHERE "GroupID" = @GroupID',
N'@GroupID int', @GroupID = 5543
任何人都知道如何做到这一点?
答案 0 :(得分:7)
我的首选是将数据库调用包装在系统事务中,而不是尝试将SQL Server提示嵌入到查询中。
using (var db = dbFactory.OpenDbConnection())
{
using (var tran = db.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted))
{
return db.Select<Group>();
}
}