6.5的VARCHAR不够长,以下方法可以:
DECLARE ACUR CURSOR FOR
SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'DECLARE @NAME VARCHAR(40)
DECLARE @SQL VARCHAR(255)
OPEN ACUR
FETCH NEXT FROM ACUR INTO @NAME
WHILE @@fetch_status=0
BEGIN
EXEC ('grant SELECT ON '+ @NAME+' TO USER1')FETCH NEXT FROM ACUR INTO @NAMEENDCLOSE ACUR
DEALLOCATE ACUR

解决方案 »

  1.   

    我的是sql server2000,同样的问题,对于数据库A中的用户user1,我想授权他建表等的权限,但是总是提示说不存在该组或者用户user1,请问何故?
    以下为语句
    use A
    go
    grant create table,create view
    to user1
    go
      

  2.   

    to Haiwer(海阔天空) :跟我写的一样,不过我的脚本报错了,没时间调试,在客户这实在太紧张了,多谢你了。结贴晚了点,不好意思!to  mj_small() :先执行
    use A
    go
    sp_adduser user1
    go
    再试试