SqlServer中常用的一些操作语句

莱莱  金牌会员 | 2024-1-20 00:08:57 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 676|帖子 676|积分 2028

我们在维护数据库数据的时候,通常会用到各种SQL语句对数据进行操作或者维护,如:查看某个数据库中有哪些用户数据表、每个数据表中总共有多少条数据……
SqlServer官方地址:https://learn.microsoft.com/zh-cn/sql
1、整理说明

我们在维护数据库数据的时候,通常会用到各种SQL语句对数据进行操作或者维护,如:查看某个数据库中有哪些用户数据表、每个数据表中总共有多少条数据……
因此,为了方便查阅,整理了如下相关语句。
2、数据库相关


  • 查看数据文件占用情况
    1. --查看数据文件占用情况
    2. DBCC showfilestats;
    复制代码

  • 查看日志文件占用情况
    1. --查看日志文件占用情况
    2. DBCC SQLPERF(LOGSPACE);
    复制代码

  • 查询某数据库的文件的占用情况
    1. --查询某数据库的文件的占用情况
    2. SELECT a.name [文件名称],
    3.            CAST(a.[size] * 1.0 / 128 AS DECIMAL(12, 1)) AS [文件设置大小(MB)],
    4.            CAST(FILEPROPERTY(s.name, 'SpaceUsed') / (8 * 16.0) AS DECIMAL(12, 1)) AS [文件所占空间(MB)],
    5.            CAST((FILEPROPERTY(s.name, 'SpaceUsed') / (8 * 16.0)) / (s.size / (8 * 16.0)) * 100.0 AS DECIMAL(12, 1)) AS [所占空间率%],
    6.            CASE
    7.                    WHEN a.growth = 0 THEN
    8.                            '文件大小固定,不会增长'
    9.                    ELSE
    10.                            '文件将自动增长'
    11.            END [增长模式],
    12.            CASE
    13.                    WHEN a.growth > 0
    14.                                 AND a.is_percent_growth = 0 THEN
    15.                            '增量为固定大小'
    16.                    WHEN a.growth > 0
    17.                                 AND a.is_percent_growth = 1 THEN
    18.                            '增量将用整数百分比表示'
    19.                    ELSE
    20.                            '文件大小固定,不会增长'
    21.            END AS [增量模式],
    22.            CASE
    23.                    WHEN a.growth > 0
    24.                                 AND a.is_percent_growth = 0 THEN
    25.                            CAST(CAST(a.growth * 1.0 / 128 AS DECIMAL(12, 0)) AS VARCHAR) + 'MB'
    26.                    WHEN a.growth > 0
    27.                                 AND a.is_percent_growth = 1 THEN
    28.                            CAST(CAST(a.growth AS DECIMAL(12, 0)) AS VARCHAR) + '%'
    29.                    ELSE
    30.                            '文件大小固定,不会增长'
    31.            END AS [增长值(%或MB)],
    32.            a.physical_name AS [文件所在目录],
    33.            a.type_desc AS [文件类型]
    34. FROM sys.database_files a
    35.         INNER JOIN sys.sysfiles s
    36.                 ON a.[file_id] = s.fileid
    37.         LEFT JOIN sys.dm_db_file_space_usage b
    38.                 ON a.[file_id] = b.[file_id]
    39. ORDER BY a.type;
    复制代码

3、数据表相关


  • 查询某数据库中的所有用户数据表
    1. --查询某数据库中的所有用户数据表
    2. SELECT name 表名称,object_id 表Id,create_date 创建时间,modify_date 修改时间 FROM sys.objects
    3. WHERE type='U'
    4. ORDER BY name;
    复制代码

  • 查询出某数据库中每个用户数据表数据总条数
    1. --查询出某数据库中每个用户数据表数据总条数
    2. SELECT a.name 表名称,b.rows 数量 FROM sys.objects a
    3. LEFT JOIN sys.partitions b ON a.object_id=b.object_id
    4. WHERE a.type='U'
    5. ORDER BY a.name;
    复制代码

  • 查询出某数据库中所有用户数据表数据总条数
    1. --查询出某数据库中所有用户数据表数据总条数
    2. SELECT SUM(b.rows) 总数量 FROM sys.objects a
    3. LEFT JOIN sys.partitions b ON a.object_id=b.object_id
    4. WHERE a.type='U';
    复制代码

持续更新中……

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

莱莱

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表