如何在SYBASE ASE中通过查询获取当前数据库名及所有模式
SYBASE ASE 获取当前数据库名及所有模式的正确语句
获取当前数据库名称
执行Select db_name报错是因为**db_name是函数,必须加括号调用**,正确语句:
SELECT db_name() AS current_database;
获取当前数据库下的所有模式
在SYBASE ASE中,模式与用户紧密关联,可通过查询系统表获取:
方法1:查询sysschemas获取模式及所属用户
SELECT s.name AS schema_name, u.name AS schema_owner FROM sysschemas s JOIN sysusers u ON s.uid = u.uid WHERE s.status = 0 -- 筛选有效模式 ORDER BY schema_name;
方法2:查询sysusers获取默认用户模式
默认情况下每个SQL用户对应一个同名模式,可直接查用户列表:
SELECT name AS schema_name FROM sysusers WHERE issqlrole = 0 -- 排除角色,只取用户 AND name NOT IN ('dbo', 'guest', 'sa') -- 按需排除系统用户 ORDER BY name;
内容的提问来源于stack exchange,提问作者Kirito
相关产品推荐
相关产品推荐

