原文:SQL Server元数据查询


1、查询触发器的信息


  1. --查询触发器的信息
  2. select name, --触发器名称
  3. (select name from sys.objects
  4. where object_id = t.parent_id)as tb_name --表的名称
  5. from sys.triggers t
  6. --查询触发器的代码
  7. select *
  8. from sys.sql_modules
  9. where object_id = object_id('触发器的名称')

2、大综合


  1. --目录视图,或者是系统视图
  2. select *
  3. from sys.objects
  4. select *
  5. from sys.views
  6. select *
  7. from sys.procedures
  8. select *
  9. from sys.triggers
  10. --表
  11. select *
  12. from sys.tables
  13. --列
  14. select *
  15. from sys.columns
  16. --列的类型
  17. select *
  18. from sys.types
  19. --主键约束
  20. select *
  21. from sys.key_constraints
  22. --外键约束
  23. select *
  24. from sys.foreign_keys
  25. select*
  26. from sys.foreign_key_columns
  27. --default约束
  28. select*
  29. from sys.default_constraints
  30. --check约束
  31. select *
  32. from sys.check_constraints
  33. --identity列
  34. select*
  35. from sys.identity_columns
  36. --计算列
  37. select *
  38. from sys.computed_columns
  39. --索引
  40. select *
  41. from sys.indexes
  42. --索引列
  43. select *
  44. from sys.index_columns
  45. --索引的使用统计
  46. select *
  47. from sys.dm_db_index_usage_stats
  48. --索引的操作统计
  49. select *
  50. from sys.dm_db_index_operational_stats(
  51. DB_ID('数据库名'),
  52. OBJECT_ID('db.dbo.object'),
  53. null,
  54. null,
  55. null)
  56. --索引的物理统计
  57. select *
  58. from sys.dm_db_index_physical_stats(
  59. DB_ID('数据库名'),
  60. OBJECT_ID('db.dbo.object'),
  61. null,
  62. null)
  63. --动态执行的信息
  64. select *
  65. from sys.dm_exec_sessions
  66. select*
  67. from sys.dm_exec_connections
  68. select*
  69. from sys.dm_exec_requests
  70. select *
  71. from sys.dm_exec_query_stats
  72. select *
  73. from sys.dm_exec_sql_text('sql_handle')
  74. select*
  75. from sys.dm_exec_query_plan('query_plan')
  76. select *
  77. from sys.dm_exec_plan_attributes('query_plan')
  78. --sql缓存计划
  79. select *
  80. from sys.dm_exec_cached_plans
  81. --通过指定计划句柄或 SQL 句柄从计划缓存中删除特定计划
  82. dbcc freeproccache
  83. --刷新针对 Microsoft SQL Server 实例执行的分布式查询所使用的分布式查询连接缓存
  84. dbcc freesessioncache
  85. --可以使用此命令从所有缓存中或者从指定的资源调控器池缓存中手动删除未使用的条目
  86. dbcc freesystemcache('all')
  87. --database缓存
  88. select *
  89. from sys.dm_os_buffer_descriptors
  90. --清空database缓存
  91. dbcc dropcleanbuffers
  92. --内存分配
  93. select *
  94. from sys.dm_os_memory_clerks
  95. --事务
  96. select *
  97. from sys.dm_tran_session_transactions
  98. --会话的事务
  99. select *
  100. from sys.dm_tran_active_transactions
  101. --数据库事务
  102. select *
  103. from sys.dm_tran_database_transactions
  104. --锁
  105. select *
  106. from sys.dm_tran_locks
  107. select *
  108. from sys.dm_tran_current_transaction
  109. --等待
  110. select *
  111. from sys.dm_os_wait_stats
  112. --正在等待的task
  113. select *
  114. from sys.dm_os_waiting_tasks
  115. --tempdb的空间使用情况
  116. select *
  117. from sys.dm_db_file_space_usage
  118. select *
  119. from sys.dm_db_session_space_usage
  120. select *
  121. from sys.dm_db_task_space_usage
  122. --存储
  123. select *
  124. from sys.databases
  125. select *
  126. from sys.database_files
  127. select *
  128. from sys.master_files
  129. select *
  130. from sys.dm_io_virtual_file_stats(
  131. DB_ID(),
  132. 1
  133. );
  134. select *
  135. from sys.dm_io_pending_io_requests
  136. --
  137. select work_queue_count,
  138. pending_disk_io_count,
  139. failed_to_create_worker,
  140. *
  141. from sys.dm_os_schedulers
  142. --备份
  143. backup database master
  144. to disk = 'c:\master.bak'
  145. with format
  146. --还原
  147. --若要还原 master 数据库,服务器必须以单用户模式运行。
  148. --有关在单用户模式下启动的信息,请参阅联机丛书中的"如何启动 SQL Server 实例(sqlservr.exe)"。
  149. restore database master
  150. from disk = 'c:\master.bak'
  151. with replace --替换现有数据库
  152. --详细的io开销
  153. set statistics io on
  154. --详细的cpu开销
  155. set statistics time on
  156. --实际的文本格式的,执行计划
  157. set statistics profile on
  158. --DBCC数据库命令控制台
  159. dbcc checkdb('master')
  160. --远程数据查询
  161. --从sql server中查询
  162. SELECT *
  163. FROM
  164. OPENROWSET('SQLOLEDB',
  165. 'server=192.168.1.16,1433;uid=sa;pwd=winchannel', --字符串
  166. henkel.dbo.mdm_store) --直接写表的名称
  167. --从Excel中查询,通过引用4.0的库
  168. select *
  169. from
  170. openrowset('microsoft.jet.oledb.4.0',
  171. 'Excel 5.0;database=c:\t2.xls',
  172. sheet1$)
  173. --excel,12.0的库
  174. select *
  175. from
  176. opendatasource('microsoft.ace.oledb.12.0',
  177. 'data source=c:\t.xls;Extended Properties=Excel 12.0')...[sheet1$]

发布了416 篇原创文章 · 获赞 135 · 访问量 94万+

SQL Server元数据查询的更多相关文章

  1. 人人都是 DBA(II)SQL Server 元数据

    SQL Server 中维护了一组表用于存储 SQL Server 中所有的对象.数据类型.约束条件.配置选项.可用资源等信息,这些信息称为元数据信息(Metadata),而这些表称为系统基础表(Sy ...

  2. 探索SQL Server元数据(一)

    简介 在数据库中,我们除了存储数据外,还存储了大量的元数据.它们主要的作用就是描述数据库怎么建立.配置.以及各种对象的属性等.本篇简单介绍如何使用和查询元数据,如何更有效的管理SQLServer 数据 ...

  3. SQL Server 元数据分类

    SQL Server 中维护了一组表用于存储 SQL Server 中所有的对象.数据类型.约束条件.配置选项.可用资源等信息,这些信息称为元数据信息(Metadata),而这些表称为系统基础表(Sy ...

  4. Sql Server中查询今天、昨天、本周、上周、本月、上月数据

    Sql Server中查询今天.昨天.本周.上周.本月.上月数据 在做Sql Server开发的时候有时需要获取表中今天.昨天.本周.上周.本月.上月等数据,这时候就需要使用DATEDIFF()函数及 ...

  5. Sql Server参数化查询之where in和like实现详解

    where in 的参数化查询实现 首先说一下我们常用的办法,直接拼SQL实现,一般情况下都能满足需要 string userIds = "1,2,3,4"; using (Sql ...

  6. 【转】Sql Server参数化查询之where in和like实现之xml和DataTable传参

    转载至: http://www.cnblogs.com/lzrabbit/archive/2012/04/29/2475427.html 在上一篇Sql Server参数化查询之where in和li ...

  7. 【转】Sql Server参数化查询之where in和like实现详解

    转载至:http://www.cnblogs.com/lzrabbit/archive/2012/04/22/2465313.html 文章导读 拼SQL实现where in查询 使用CHARINDE ...

  8. SQL Server中查询用户的对象权限和角色的方法

    --SQL Server中查询用户的对象权限和角色的方法 -- 查询用户的object权限 exec sp_helprotect NULL, 'sa' -- 查询用户拥有的role exec sp_h ...

  9. 优化SQL Server数据库查询方法

    SQL Server数据库查询速度慢的原因有很多,常见的有以下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列 ...

随机推荐

  1. [原][资料整理][osg]osgDB文件读取插件,工作机制,支持格式,自定义插件

    参考: osgPlugins相关 osg读取文件的原理(插件工作机制) 当使用osgDB读取文件时,会自动根据文件的扩展名来到插件目录中寻找相应的插件,来实现. 比如: osgviewer cow.o ...

  2. flutter State管理

    import 'package:flutter/material.dart'; import 'package:scoped_model/scoped_model.dart'; class State ...

  3. shell编程系列17--文本处理三剑客之awk动作中的表达式用法

    shell编程系列17--文本处理三剑客之awk动作中的表达式用法 awk动作表达式中的算数运算符 awk动作中的表达式用法总结: 运算符 含义 + 加 - 减 * 乘 / 除 % 模 ^或** 乘方 ...

  4. django实战总结2

    https://www.jianshu.com/p/9b3bfe934511 https://www.cnblogs.com/1Q84mi/p/xadmin002.html https://blog. ...

  5. Python3基础 只有int类型,没有long类型

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  6. Oracle中RAISE异常

    转: Oracle中RAISE异常 由三种方式抛出异常 1. 通过PL/SQL运行时引擎 2. 使用RAISE语句 3. 调用RAISE_APPLICATION_ERROR存储过程 当数据库或PL/S ...

  7. RabbitMQ 入门教程(PHP版) 第一部分:Hello World

    abbitMQ是一个消息代理.它的核心原理非常简单:接收和发送消息.你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处.在这个比喻中,RabbitMQ是一个邮箱.邮局.邮递 ...

  8. PDMan 数据库建模工具

    PDMan是一款开源免费的数据库模型建模工具,支持Windows,Mac,Linux等操作系统,是PowerDesigner之外,更好的免费的替代方案.他具有颜值高,使用简单的特点.包含数据库建模,灵 ...

  9. 了解美杜莎(Medusa)

    (1).美杜莎介绍 Medusa(美杜莎)是一个速度快,支持大规模并行,模块化的暴力破解工具.可以同时对多个主机,用户或密码执行强力测试.Medusa和hydra一样,同样属于在线密码破解工具.Med ...

  10. SQL语句 update 字段=字段+字符串 拼接

    update user_info set user_name = concat(user_name,'呵呵呵') where user_name = '哈哈哈';