转获取sql维护的表关系

select   b.[value] from sys.columns a left join sys.extended_properties b on a.object_id=b.major_id
        and a.column_id=b.minor_id inner join sysobjects c on a.column_id=c.id
        and a.[name]=‘列名‘ and c.[name]=‘表名‘
        SELECT
        表名=case   when   a.colorder=1   then   d.name   else   ‘‘   end,
        表说明=case   when   a.colorder=1   then   isnull(f.value,‘‘)   else   ‘‘   end,
        字段序号=a.colorder,
        字段名=a.name,
        标识=case   when   COLUMNPROPERTY(   a.id,a.name,‘IsIdentity‘)=1   then   ‘√‘else   ‘‘   end,
        主键=case   when   exists(SELECT   1   FROM   sysobjects   where   xtype=‘PK‘   and   name   in   (
        SELECT   name   FROM   sysindexes   WHERE   indid   in(
        SELECT   indid   FROM   sysindexkeys   WHERE   id   =   a.id   AND   colid=a.colid
        )))   then   ‘√‘   else   ‘‘   end,
        类型=b.name,
        占用字节数=a.length,
        长度=COLUMNPROPERTY(a.id,a.name,‘PRECISION‘),
        小数位数=isnull(COLUMNPROPERTY(a.id,a.name,‘Scale‘),0),
        允许空=case   when   a.isnullable=1   then   ‘√‘else   ‘‘   end,
        默认值=isnull(e.text,‘‘),
        字段说明=isnull(g.[value],‘‘)
        FROM   syscolumns   a
        left   join   systypes   b   on   a.xusertype=b.xusertype
        inner   join   sysobjects   d   on   a.id=d.id     and   d.xtype=‘U‘   and     d.name<>‘dtproperties‘
        left   join   syscomments   e   on   a.cdefault=e.id
        left   join   sys.extended_properties   g   on   a.id=g.major_id   and   a.colid=g.minor_id
        left   join   sys.extended_properties   f   on   d.id=f.major_id   and   f.minor_id=0
        --where   d.name=‘orders‘         --如果只查询指定表,加上此条件
        order   by   a.id,a.colorder

时间: 2024-10-08 18:39:49

转获取sql维护的表关系的相关文章

Mybatis——传入POJO对象,动态SQL,多表关系

传入POJO对象 QueryVo.java public class QueryVo implements Serializable{ private User user; public User getUser() { return user; } public void setUser(User user) { this.user = user; } } SQL映射文件 <!-- 传入POJO对象,查询用户 --> <select id="findUserByPOJO&qu

获取SQL SERVER数据库表结构

select a.name, b.name + '('+ convert(varchar,a.length) + ')' + case a.isnullable when 1 then ' Null' else '' end as [type], '' as Pretty  from syscolumns a join systypes b on (a.xusertype = b.xusertype) where a.id = object_id('TableName') Order By a.

ModelSerializer(重点) 基表 测试脚本 多表关系建外键 正反查 级联 插拔式连表 序列化反序列化整合 增删查 封装response

一.前戏要做好 配置:settings.py #注册drf INSTALLED_APPS = [ # ... 'api.apps.ApiConfig', 'rest_framework', ] ? #配置数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'dg_proj', 'USER': 'root', 'PASSWORD': '123', } } """ 在任何(根或者

SQL获取数据库名,表名,列名,说明等信息

由于最近工作涉及SQL语句较多,对一些不常见的SQL函数.及存储过程下面进行整理和描述,供大家分享: /************************************************************************************************************** 1.获取所有用户名: islogin='1' :表示帐户 islogin='0' :表示角色 status='2' :表示用户帐户 status='0' :表示系统帐户 **

Hibernate多表关系

Hibernate多表关系 hibernate 一对多(多对一) 创建实体 配置ORM映射文件 创建测试文件 双方关系维护 级联操作 外键的维护权管理 双方关系维护.级联操作.外键维护权之间的关系 一对多(多对一) 在一个视频管理的系统中应该包含这样两个表讲课人Speaker.视频Video.其中一个讲课人可以讲多个视频,而一个视频只能属于一个讲课人:在这里Speaker就是一的状态,Video就是多的状态. 创建实体 在Speaker中添加set集合(如果添加list集合需要在配置文件中额外配

ORACLE获取SQL绑定变量值的方法总结

  本文总结一下ORACLE数据库中如何获取SQL绑定变量值的方法,在SQL优化调优过程中,经常会用到这方面的知识点.在此梳理.总结一下,方面日后查找.翻阅. 方法1:查询V$SQL V$SQL视图中的BIND_DATA字段用来存储绑定变量的值,但是从这个视图查询绑定变量的值,有很大的局限性: 1: 它的记录频率受_cursor_bind_capture_interval隐含参数控制,默认值为900,表示每900秒记录一次绑定值,也就是说在900内,绑定变量值的改变不会反应在这个视图中.除非你调

运用Java递归获取数据库的目录表结构

数据库设计 现在要设计一个目录数据库表,即一个表中存有根目录和各级子目录,这时候我们可以设计一张表,用parent_id来存储子目录对应的父目录的序号,设计表如下: 表的字段类型: +-----------+----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+---------------------

SQL需求1-两表关联更新操作

今天,业务部门给我来了一个需求.需要将本地的的excel表格导入到SQL Server中,SQL Server原表t1增加了三列字段,默认是NULL无数据.将本地导入的excel表格t2表中这几列数据更新到原表t1中. 现将导入方法记录下来,方便今后使用: 1. 导入Excel表格到SQL Server中.(略) 2. 查看数据内容 3. 更新数据 4. 更新后数据显示结果 由于本人多年维护 MySQL,现将MySQL 的更新方法整理一下: 1.查看数据内容 2.更新数据 3.更新后数据显示结果

Oracle实践--PL/SQL基础之表分区

PL/SQL基础入门之表分区 PL/SQL:过程语言(Procedure  Language)和结构化语言(Structured Query Language)结合而成的编程语言,是对SQL的扩展,支持多种数据类型,如大对象和集合类型,可使用条件和循环等控制语句,可创建存储过程,程序包和触发器等,给sql语句的执行添加程序逻辑,与Oracle服务器和Oracle工具紧密集成,具有可移植性,灵活性和安全性. ---------------------------------------------