如题

解决方案 »

  1.   

    用游标
    declare   tb   cursor   local 
    for 
    select   name   from   sysobjects   where   name   like   '__yyy___ ' 
    declare   @name   sysname 
    open   tb 
    fetch   tb   into   @name 
    while   @@fetch_status   =   0 
    begin 
          EXEC(N 'GRANT   SELECT   ON   '   +   @name   +   '   TO   [Assistant] ')       --   括号不匹配而已 
          fetch   tb   into   @name 
    end 
    close   tb 
    deallocate   tb 
      

  2.   

    创建一个队列,比如MSMQ,把对该表要执行的操作,封装成消息,插入队列中。再通过其他的托管代码来监听队列(比如com+),由于队列的中的消息的执行是按照FIFO的原理执行的,这样在面对来自客户端的大量请求时,可以保证所有请求的执行都是顺序执行的。
    缺点是:对应用程序的改动可能比较大,调试的时候比较麻烦。需要架设应用服务器。...
    优点是:适用于多客户端的情况。可以减少数据库服务器的运行负荷。...不知道,这样行不行,如果可以的话,楼主可以试试看。