如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)

   2015-11-08 0
核心提示:本篇文章是对如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)的方法进行了详细的分析介绍,需要的朋友参考下
1.获取表的基本字段属性
复制代码 代码如下:

--获取SqlServer中表结构
SELECT syscolumns.name,systypes.name,syscolumns.isnullable,
syscolumns.length
FROM syscolumns, systypes
WHERE syscolumns.xusertype = systypes.xusertype
AND syscolumns.id = object_id('你的表名')

运行效果

如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)

2.如果还想要获取字段的描述信息则

复制代码 代码如下:

--获取SqlServer中表结构 主键,及描述
declare @table_name as varchar(max)
set @table_name = '你的表名'
select sys.columns.name, sys.types.name, sys.columns.max_length, sys.columns.is_nullable,
  (select count(*) from sys.identity_columns where sys.identity_columns.object_id = sys.columns.object_id and sys.columns.column_id = sys.identity_columns.column_id) as is_identity ,
  (select value from sys.extended_properties where sys.extended_properties.major_id = sys.columns.object_id and sys.extended_properties.minor_id = sys.columns.column_id) as description
  from sys.columns, sys.tables, sys.types where sys.columns.object_id = sys.tables.object_id and sys.columns.system_type_id=sys.types.system_type_id and sys.tables.name=@table_name order by sys.columns.column_id

运行效果

如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)

3.单独查询表的递增字段

复制代码 代码如下:

--单独查询表递增字段
select [name] from syscolumns where
id=object_id(N'你的表名') and COLUMNPROPERTY(id,name,'IsIdentity')=1

运行效果
如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)

4.获取表的主外键

复制代码 代码如下:

--获取表主外键约束
exec sp_helpconstraint   '你的表名' ;

运行效果
如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • oracle数据库按照日期排序后获取第一条数据SQL
    select *from (select * from 表名 where 条件 order by 排序日期 desc) where rownum=1;  select *  from (select * from TABLE where STATE = 3 order by TIME desc) where rownum=1;
    02-10
  • oracle 与sql serve 获取随机行数的数据
    Oracle 随机获取N条数据    当我们获取数据时,可能会有这样的需求,即每次从表中获取数据时,是随机获取一定的记录,而不是每次都获取一样的数据,这时我们可以采取Oracle内部一些函数,来达到这样的目的1) select * from (select * from tablename order by sy
    02-10
  • mysql使用Sql获取13位时间戳 mysql数据库时间戳
    SELECT REPLACE(unix_timestamp(current_timestamp(3)),'.',''); 
    02-10
  • 如何在mysql命令窗口获取到程序正在执行的sql语句
    如何在mysql命令窗口获取到程序正在执行的sql语
    步骤:1.进入mysql的命令窗口;2.运行use information_schema;3.运行select * from PROCESSLIST where info is not null;(注:需要在程序执行某一操作的同时执行该语句)4.命令窗口会列出当前mysql所有线程的相关信息,包含mysql正在执行的语句(在INFO一栏
    02-10
  • Oracle,Mysql 获取用户下所有表名,获取表所有
    Mysql下面是mysql获取数据库所有表的语句select table_name from information_schema.TABLES where TABLE_SCHEMA='Username'information_schema这个是数据系统用来保存数据表的总表select table_name tableName, engine, table_comment tableComment, create_
    02-10
  • Oracle 在SQL语句中如何获取系统当前时间并进行操作
    


            
 
 
 
    Oracle 在SQL语句中如何获取系统当前时间并进行
    select sysdate from dual; select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; select to_char(sysdate,'yyyy-mm-dd hh24:mi') from dual;  select to_char(sysdate, 'yyyy' ) from dual; --年select to_char(sysdate, 'MM
    02-09
  • 【Oracle】锁表处理 SQL 错误: ORA-00054: 资源
    问题描述有时候ORACLE数据的某些表由于频繁操作,而且比较大,会导致锁表(死锁)。问题分析(1)锁的分析ORACLE里锁有以下几种模式:0:none1:null 空2:Row-S 行共享(RS):共享表锁,sub share3:Row-X 行独占(RX):用于行的修改,sub exclusive4:Share
    02-09
  • mysql sql获取上条插入id,update影响行数
     1.获取上条插入数据  LAST_INSERT_ID();2.获取update影响行数。  ROW_COUNT(); mysql UPDATE t- SET address = 'beijing111'- WHERE id = 1- AND NAME = 'yubowei';Query OK, 1 row affected (0.30 sec)Rows matched: 1Changed: 1Warnings: 0mysqlmysq
    02-09
  • mysql 获取列名sql语句
    select GROUP_CONCAT(CONCAT('i.',COLUMN_NAME,''))from(select COLUMN_NAME from information_schema.COLUMNS where table_name = 'inventorycheck' and table_schema = 'hystorage')t
    02-09
  • Mysql中 show table status 获取表信息的方法
    这篇文章主要介绍了Mysql中 show table status 获取表信息的方法的相关资料,需要的朋友可以参考下
点击排行