sybase中游标的使用示例
以下是在sybase使用游标的示例,因为当初使用这个示例消耗了一定的时间,先特做以记录
--查询直接授予用户的对象权限
DECLARE cur_DBName CURSOR FOR SELECT [name] FROM master..sysdatabases
go
BEGIN
DECLARE @temDBName VARCHAR(30)
DECLARE @v_sql VARCHAR(8000)
CREATE TABLE #tb_t1(dbName VARCHAR(50) NULL ,objectName VARCHAR(50) NULL,userName VARCHAR(50) NULL ,loginName VARCHAR(50) NULL ,action INT NULL ,protecttype INT ,grantor INT)
OPEN cur_DBName
FETCH cur_DBName into @temDBName
WHILE @@SQLSTATUS=0
BEGIN
SET @v_sql='insert into #tb_t1 select '''+@temDBName+''',d.name,b.name,c.name,a.action,a.protecttype,a.grantor from '+@temDBName+'..sysprotects a
inner join '+@temDBName+'..sysusers b on a.uid = b.uid
inner join master..syslogins c on b.suid = c.suid
inner join '+@temDBName+'..sysobjects d on a.id = d.id
'
exec(@v_sql)
FETCH cur_DBName into @temDBName
END
close cur_DBName
deallocate CURSOR cur_DBName
SELECT * FROM #tb_t1
DROP TABLE #tb_t1
END
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341