SQL server-常用语句
1、查询语句
select * from sys.databases;--查询所有库
SELECT Name FROM Master..SysDatabases ORDER BY Name;--查询所有库
select * from sys.tables;--查询所有表
SELECT Name FROM SysObjects Where XType='U' ORDER BY Name;--查询所有表
select * from sysaltfiles;--主数据库 保存数据库的文件
select * from syscharsets;--主数据库 字符集与排序顺序
select * from sysconfigures;--主数据库 配置选项
select * from syscurconfigs;--主数据库 当前配置选项
select * from sysdatabases;--主数据库 服务器中的数据库
select * from syslanguages;--主数据库 语言
select * from syslogins;--主数据库 登陆帐号信息
select * from sysoledbusers;--主数据库 链接服务器登陆信息
select * from sysprocesses;--主数据库 进程
select * from sysremotelogins;--主数据库 远程登录帐号
select * from syscolumns;--每个数据库 列
select * from sysconstrains;--每个数据库 限制
select * from sysfilegroups;--每个数据库 文件组
select * from sysfiles;--每个数据库 文件
select * from sysforeignkeys;--每个数据库 外部关键字
select * from sysindexs;--每个数据库 索引
select * from sysmenbers;--每个数据库 角色成员
select * from sysobjects;--每个数据库 所有数据库对象
select * from syspermissions;--每个数据库 权限
select * from systypes;--每个数据库 用户定义数据类型
2、运维语句
--查询当前库中的所有表和行数
select a.name,b.rows
from sys.sysobjects as a inner join sys.sysindexes as b on a.id = b.id
where (b.indid in (0,1)) and (a.type = 'u') order by a.name,b.rows desc;
--查询数据库阻塞
SELECT * FROM sys.sysprocesses WHERE blocked<>0;
--查询SQL连接分布
SELECT Hostname FROM sys.sysprocesses WHERE hostname<>'';
--查看SQLServer并行度
SELECT value_in_use FROM sys.configurations WHERE name = 'max degree of parallelism';
--查询最消耗CPU的SQL Top10
select top(10) st.text as Query, qs.total_worker_time, qs.execution_count from sys.dm_exec_query_stats as qs CROSS Apply sys.dm_exec_sql_text(qs.sql_handle) AS st order by qs.total_worker_time desc;
--查询数据库中记录行数超过100万的表有哪些
select distinct obj.name ,ind.rows from sysindexes ind left join sysobjects obj on ind.id = obj.id where ind.rows>=1000000 order by ind.rows desc;
--查询SqlServer客户端连接数
select * from (SELECT sys.dm_exec_connections.client_net_address as 客户端地址 , sys.dm_exec_sessions.program_name as 客户端程序名 , sys.dm_exec_sessions.host_name as 客户端机器名, sys.dm_exec_sessions.login_name as 客户端登录名, COUNT(sys.dm_exec_connections.session_id) AS 客户端连接数 FROM sys.dm_exec_sessions INNER JOIN sys.dm_exec_connections ON sys.dm_exec_sessions.session_id = sys.dm_exec_connections.session_id GROUP BY sys.dm_exec_connections.client_net_address , sys.dm_exec_sessions.program_name , sys.dm_exec_sessions.host_name , sys.dm_exec_sessions.login_name) tba ORDER BY 客户端地址 , 客户端程序名;
--查看客户端连接地址
SELECT distinct C.CLIENT_NET_ADDRESS FROM sys.sysprocesses S, sys.dm_exec_connections C WHERE S.spid = C.SESSION_ID;
--查看当前终端会话信息
select * from sys.dm_exec_sessions;
--查询当前的连接信息
select * from sys.dm_exec_connections;
--查看所有表的自增列
select b.name as [表名] ,a.name as [列名],a.max_length as [列类型长度],a.is_identity as [自增字段]
from sys.columns a
inner join sys.tables b on b.object_id=a.object_id
where is_identity = 1
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤