sqlserver数据库中的表、字段sql语句

前端之家收集整理的这篇文章主要介绍了sqlserver数据库中的表、字段sql语句前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.系统表sysobjects

数据库中创建的每个对象(例如约束、默认值、日志、规则以及存储过程)都对应一行。

列名 数据类型 说明

name

@H_404_22@sysname

对象名

id

@H_404_22@int

对象标识号

xtype

@H_404_22@char(2)

对象类型。可以是以下对象类型之一:

AF = 聚合函数 (CLR)

C = CHECK 约束

D = 默认值或 DEFAULT 约束

F = FOREIGN KEY 约束

L = 日志

FN = 标量函数

FS = 程序集 (CLR) 标量函数

FT = 程序集 (CLR) 表值函数

IF = 内联表函数

IT = 内部表

P = 存储过程

PC = 程序集 (CLR) 存储过程

PK = PRIMARY KEY 约束(类型为 K)

RF = 复制筛选存储过程

S = 系统表

SN = 同义词

SQ = 服务队列

TA = 程序集 (CLR) DML 触发器

TF = 表函数

TR = sql DML 触发器

TT = 表类型

U = 用户

UQ = UNIQUE 约束(类型为 K)

V = 视图

X = 扩展存储过程

uid

@H_404_22@smallint

对象所有者的架构 ID。

对于从旧版 sql Server 升级数据库,架构 ID 等于所有者的用户 ID。

ms177596.note(zh-cn,<asql.105).gif src="http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif" xmlns="">重要提示

如果使用以下任何一个 sql Server DDL 语句,则必须使用 sys.objects 目录视图而不是 sys.sysobjects。 CREATE | ALTER | DROP USER CREATE | ALTER | DROP ROLE CREATE | ALTER | DROP APPLICATION ROLE CREATE SCHEMA ALTER AUTHORIZATION ON OBJECT

如果用户数和角色数超过 32,767,则发生溢出或返回 NULL。

有关详细信息,请参阅查询 SQL Server 系统目录

info

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

status

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

base_schema_ver

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

replinfo

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

parent_obj

@H_404_22@int

父对象的对象标识号。例如,表 ID(如果父对象是触发器或约束)。

crdate

@H_404_22@datetime

对象的创建日期。

ftcatid

@H_404_22@smallint

注册为使用全文索引的所有用户表的全文目录标识符,对于没有注册的所有用户表则为 0。

schema_ver

@H_404_22@int

在每次更改表的架构时都会增加的版本号。始终返回 0。

stats_schema_ver

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

type

@H_404_22@char(2)

对象类型。可以是下列值之一:

AF = 聚合函数 (CLR)

C = CHECK 约束

D = 默认值或 DEFAULT 约束

F = FOREIGN KEY 约束

FN = 标量函数

FS = 程序集 (CLR) 标量函数

FT = 程序集 (CLR) 表值函数 IF = 内联表函数

IT - 内部表

K = PRIMARY KEY 或 UNIQUE 约束

L = 日志

P = 存储过程

PC = 程序集 (CLR) 存储过程

R = 规则

RF = 复制筛选存储过程

S = 系统表

SN = 同义词

SQ = 服务队列

TA = 程序集 (CLR) DML 触发器

TF = 表函数

TR = sql DML 触发器

TT = 表类型

U = 用户

V = 视图

X = 扩展存储过程

userstat

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

sysstat

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

indexdel

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

refdate

@H_404_22@datetime

标识为仅供参考。不提供支持。不保证以后的兼容性。

version

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

deltrig

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

instrig

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

updtrig

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

seltrig

@H_404_22@int

标识为仅供参考。不提供支持。不保证以后的兼容性。

category

@H_404_22@int

用于发布、约束和标识。

cache

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

参考 sys.sysobjects (Transact-SQL)

2.syscolumns

为每个表和视图中的每列返回一行,并为数据库中的存储过程的每个参数返回一行。

列名 数据类型 说明

@H_404_22@name

@H_404_22@sysname

列名或过程参数的名称

@H_404_22@id

@H_404_22@int

此列所属表的对象 ID,或者与此参数关联的存储过程的 ID。

@H_404_22@xtype

@H_404_22@tinyint

@H_404_22@sys.types 中的物理存储类型。

@H_404_22@typestat

@H_404_22@tinyint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@xusertype

@H_404_22@smallint

扩展的用户定义数据类型的 ID。如果数据类型的数字超过 32,767,则溢出或返回 NULL。有关详细信息,请参阅查询 SQL Server 系统目录

@H_404_22@length

@H_404_22@smallint

@H_404_22@sys.@H_404_22@types 中的最大物理存储长度。

@H_404_22@xprec

@H_404_22@tinyint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@xscale

@H_404_22@tinyint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@colid

@H_404_22@smallint

列 ID 或参数 ID。

@H_404_22@xoffset

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@bitpos

@H_404_22@tinyint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@reserved

@H_404_22@tinyint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@colstat

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@cdefault

@H_404_22@int

此列的默认值的 ID。

@H_404_22@domain

@H_404_22@int

此列的规则或 CHECK 约束的 ID。

@H_404_22@number

@H_404_22@smallint

过程分组时的子过程号。

0 = 非过程项

@H_404_22@colorder

@H_404_22@smallint

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@autoval

@H_404_22@varbinary(8000)

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@offset

@H_404_22@smallint

此列所在行的偏移量。

@H_404_22@collationid

@H_404_22@int

列的排序规则的 ID。对于非字符列,此值为 NULL。

@H_404_22@status

@H_404_22@tinyint

用于说明列或参数的属性的位图:

0x08 = 列允许空值。

0x10 = 添加 @H_404_22@varchar 或 @H_404_22@varbinary 列时,执行 ANSI 填充。保留 @H_404_22@varchar 列的尾随空格以及 @H_404_22@varbinary 列的尾随零。

0x40 = 参数为 OUTPUT 参数。

0x80 = 列为标识列。

@H_404_22@type

@H_404_22@tinyint

@H_404_22@sys.@H_404_22@types 中的物理存储类型。

@H_404_22@usertype

@H_404_22@smallint

@H_404_22@sys.types 中的用户定义数据类型的 ID。如果数据类型数超过 32767,则会发生溢出或返回 NULL。有关详细信息,请参阅查询 SQL Server 系统目录

@H_404_22@printfmt

@H_404_22@varchar(255)

标识为仅供参考。不提供支持。不保证以后的兼容性。

@H_404_22@prec

@H_404_22@smallint

此列的精度级别。

-1 = @H_404_22@xml 或大值类型。

@H_404_22@scale

@H_404_22@int

此列的小数位数。

NULL = 数据类型不是数值。

@H_404_22@iscomputed

@H_404_22@int

指示列是否为计算列的标志:

0 = 非计算列。

1 = 计算列。

@H_404_22@isoutparam

@H_404_22@int

指示过程参数是否为输出参数:

1 = True

0 = False

@H_404_22@isnullable

@H_404_22@int

指示列是否允许空值:

1 = True

0 = False

@H_404_22@collation

@H_404_22@sysname

列的排序规则的名称。如果不是基于字符的列,则为 NULL。

参考 sys.syscolumns (Transact-SQL)

删除数据库内的表

declare dlist cursor for
select name from sysobjects where xtype='U'
open dlist
declare @n varchar(4000)
fetch next from dlist into @n
while @@fetch_status=0
begin
declare @es varchar(4000)
set @es='DROPtable '+@n
exec( @es)
fetch next from dlist into @n
end
close dlist
DEALLOCATE dlist

猜你在找的MsSQL相关文章