五.权限管理 (DCL) 语句1.GRANT 赋于权限
常用的系统权限集合有以下三个:
CONNECT(基本的连接), RESOURCE(程序开发), DBA(数据库管理)
常用的数据对象权限有以下五个:
ALL  ON 数据对象名,  SELECT ON 数据对象名,  UPDATE ON 数据对象名,
DELETE  ON 数据对象名,  INSERT ON 数据对象名,   ALTER  ON 数据对象名GRANT CONNECT, RESOURCE TO 用户名;
GRANT SELECT ON 表名 TO 用户名;
GRANT SELECT, INSERT, DELETE ON表名 TO 用户名1, 用户名2;2.REVOKE 回收权限REVOKE CONNECT, RESOURCE FROM 用户名;
REVOKE SELECT ON 表名 FROM 用户名;
REVOKE SELECT, INSERT, DELETE ON表名 FROM 用户名1, 用户名2;

解决方案 »

  1.   

    GRANT { ALL | statement [ ,...n ] } 
    TO security_account [ ,...n ]对象权限:GRANT
        { ALL [ PRIVILEGES ] | permission [ ,...n ] }
        { 
            [ ( column [ ,...n ] ) ] ON { table | view }
            | ON { table | view } [ ( column [ ,...n ] ) ]
            | ON { stored_procedure | extended_procedure }
            | ON { user_defined_function }
        } 
    TO security_account [ ,...n ] 
    [ WITH GRANT OPTION ] 
    [ AS { group | role } ]
      

  2.   

    我的意思是要把所有的表和视图一起授权,而不是一个一个列出来!!!!!还有,help里的东西就不要贴了……
      

  3.   

    declare @tb table(ID int identity,name varchar(20))
    insert @tb (name)
    select name from sysobjects where xtype in('U','V')declare @i int
            ,@sql varchar(20)
            ,@account varchar(100)   --要赋予权限的用户
    set @i=1while exists(select 1 from @tb where ID=@i)
    begin
          select @sql='grant all on '+name+' to '+@account 
                 ,@i=@i+1
          from @tb where ID=@i
          exec(@sql)
    end
      

  4.   

    vivianfdlpw() 的方法可行,谢谢