zoukankan      html  css  js  c++  java
  • SqlServer中Sql查看存储过程

    SqlServer中Sql查看存储过程

    转自:http://www.cnblogs.com/sunliyuan/p/6625862.html

    ( 一)利用Sql语句查询数据库中的所有表

    1.利用sysobjects系统表

    1
    select * from sysobjects where xtype='U'
    2,利用sys.tables目录视图

    sys.tables目录视图,为每个表对象返回一行.

    1
    select * from sys.tables
    注意:sys.tables目录视图也只有在SQL SERVER2005及以上的版本中才能使用。

    3,利用存储过程sp_tables

    1
    exec sp_tables

    (二)利用Sql语句查询数据中的所有存储过程

    1.sysobjects系统表,在数据库中创建的每个对象(例如约束、默认值、日志、规则以及存储过程)都有对应一行,我们在该表中筛选出xtype等于P的所有记录,就为数据库中的存储过程了。

    1
    2
    select * from sysobjects where xtype='P'
    select * from sys.objects where type='P'

    2.sys.procedures目录视图,每个存储过程都会在返回结果集中占一行.

    1
    select * from sys.procedures

    适用技巧:

    Sql Server查看所有存储过程或视图的位置及内容

    1
    2
    3
    select a.name,a.[type],b.[definition] from sys.all_objects a,sys.sql_modules b
    where a.is_ms_shipped=0 and a.object_id = b.object_id and a.[type] in ('P','V','AF')
    order by a.[name] asc

    从上面的SQL语句可以看出,主要用到了两个 sys.all_objects 和 sys.sql_modules 两个系统存储过程,

    其中 sys.all_objects 是 sql server 2012 版本中的系统视图,在 更早期的 sql server 版本中,

    应该用 sys.objects,同时,sys.objects 在 2012 中也是可以用的,只不过考虑到后续兼容性,在新版本中,用新的 name 还是比较好。

    Sys.All_Objects(sys.objects)

    该视图 很出名,是经常使用到的,主要是:显示所有架构范围内的用户定义对象和系统对象的 UNION

    主要字段:

    1. Name:对象名

    2. Object_id:对象标识号,在数据中是唯一的

    3. Principal_id :架构所有者ID

    4. Parent_object_id:此对象所属对象的ID,0 = 不是子对象

    5. Type:对象类型,常用的类型有, AF = 聚合函数 P = SQL 存储过程 V = 视图 TT = 表类型 U = 表(用户定义类型)

    6. Type_desc:对象类型的说明

    7. Create_date / Modify_date :创建日期 / 修改日期

    8. is_ms_shipped:是否为 内部 SQL Server 组建所创建的对象,常用来判断 是否是 系统内置或用户自定义 的对象

    Sys.Sql_Modules

    对每个 SQL 语言定义的模块对象都返回一行。 类型为 P、RF、V、TR、FN、IF、TF 和 R 的对象均有关联的 SQL 模块。

    主要字段:

    1. Object_id:对象标识号,在数据中是唯一的

    2. Definition:用于定义此模块的 SQL 文本

  • 相关阅读:
    springboot整合mybatis
    springboot配置mvc拦截器
    ORA-65048:在可插入数据库PDBORCL中处理当前DDL语句时出错 ORA-00959:表空间‘MMMM’不存在
    SI Unit 国际标准单位
    java学习的第二阶段总结
    java学习的第一阶段总结
    vmware学习笔记
    java当中的语法糖
    jvm系统学习笔记
    java中Direct Memory堆外内存
  • 原文地址:https://www.cnblogs.com/YuyuanNo1/p/7543221.html
Copyright © 2011-2022 走看看