重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

标题: sqlserver 中 sys.syslogins与 sys.sql_logins 区别 [打印本页]

作者: 郑全    时间: 2026-3-25 15:46
标题: sqlserver 中 sys.syslogins与 sys.sql_logins 区别
本帖最后由 郑全 于 2026-3-25 15:50 编辑

这两个都是查登录名(Login)的系统视图,但级别、用途、兼容性完全不同,我用最直白的方式给你讲透。



一句话核心区别


详细对比(一看就懂)
1. sys.syslogins

查询示例:

SELECT * FROM sys.syslogins



2. sys.sql_logins

查询示例:

SELECT * FROM sys.sql_logins



最关键区别(必记)

特性
sys.syslogins
sys.sql_logins
能查 Windows 登录✅ 能❌ 不能
能查 SQL 密码登录✅ 能✅ 能
是否新版推荐❌ 旧版✅ 是
密码安全字段❌ 无✅ 丰富
未来兼容性⚠️ 可能弃用✅ 长期支持




你应该用哪个?
✅ 日常开发、DBA 运维 → 一律用 sys.sql_logins



实用查询(直接复制用)
查所有登录名(含 Windows)
SELECT * FROM sys.syslogins


只查 SQL 密码登录(推荐)
SELECT name, is_policy_checked, is_expiration_checked, is_locked

FROM sys.sql_logins


查 sa 账号状态
sqlSELECT * FROM sys.sql_logins WHERE name = 'sa'




总结






欢迎光临 重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2