예제 #1
0
 protected virtual void VisitLockHints(LockHints lockHints)
 {
     if (lockHints.HasFlag(LockHints.RowLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.ROWLOCK);
     }
     if (lockHints.HasFlag(LockHints.PageLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.PAGLOCK);
     }
     if (lockHints.HasFlag(LockHints.TableLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.TABLOCK);
     }
     if (lockHints.HasFlag(LockHints.DatabaseLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.DBLOCK);
     }
     if (lockHints.HasFlag(LockHints.UpdateLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.UPDLOCK);
     }
     if (lockHints.HasFlag(LockHints.ExclusiveLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.XLOCK);
     }
     if (lockHints.HasFlag(LockHints.HoldLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.HOLDLOCK);
     }
     if (lockHints.HasFlag(LockHints.NoLock))
     {
         this.Builder.AppendFormat("{0}", this.Dialect.NOLOCK);
     }
 }
예제 #2
0
 public TableHintBuilder(IFragmentBuilder parent, IQueryGraphBuilder graph, LockHints lockHints) : base(parent, graph)
 {
     this.LockHints = lockHints;
 }