Sql Xtype

SQL Server xtype的介绍

数据库内创建的每个对象(约束、默认值、日志、规则、存储过程等)在表中占一行。只有在 tempdb 内,每个临时对象才在该表中占一行。

列名 数据类型 描述

name sysname 对象名。

Id int 对象标识号。

xtype char(2) 对象类型。可以是下列对象类型中的一种:

C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
L = 日志
FN = 标量函数
IF = 内嵌表函数
P = 存储过程
PK = PRIMARY KEY 约束(类型是 K)
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
UQ = UNIQUE 约束(类型是 K)
V = 视图
X = 扩展存储过程
uid smallint 所有者对象的用户 ID。
info smallint 保留。仅限内部使用。
status int 保留。仅限内部使用。
base_schema_
ver int 保留。仅限内部使用。
replinfo int 保留。供复制使用。
parent_obj int 父对象的对象标识号(例如,对于触发器或约束,该标识号为表 ID)。
crdate datetime 对象的创建日期。
ftcatid smallint 为全文索引注册的所有用户表的全文目录标识符,对于没有注册的所有用户表则为 0。
schema_ver int 版本号,该版本号在每次表的架构更改时都增加。
stats_schema_
ver int 保留。仅限内部使用。
type char(2) 对象类型。可以是下列值之一:
C = CHECK 约束
D = 默认值或 DEFAULT 约束
F = FOREIGN KEY 约束
FN = 标量函数
IF = 内嵌表函数
K = PRIMARY KEY 或 UNIQUE 约束
L = 日志
P = 存储过程
R = 规则
RF = 复制筛选存储过程
S = 系统表
TF = 表函数
TR = 触发器
U = 用户表
V = 视图
X = 扩展存储过程
userstat smallint 保留。
sysstat smallint 内部状态信息。
indexdel smallint 保留。
refdate datetime 留作以后使用。
version int 留作以后使用。
deltrig int 保留。
instrig int 保留。
updtrig int 保留。
seltrig int 保留。
category int 用于发布、约束和标识。
cache smallint 保留。

可以很方便的用

select * from sysobjects where xtype=‘TR‘ and parent_obj=object_id(‘表名‘) 

查出表的信息

syscolumns表内的xtype

查了一下,这些东西都是存于每一个数据库的syscolumns表里面得,name就是列名,xtype就是数据类型,但是这个xtype是数字的,下面是数字和数据类型对应的关系;

xtype=34 ‘image‘
 xtype= 35 ‘text‘
 xtype=36 ‘uniqueidentifier‘
 xtype=48 ‘tinyint‘
 xtype=52 ‘smallint‘
 xtype=56 ‘int‘
 xtype=58 ‘smalldatetime‘
 xtype=59 ‘real‘
 xtype=60 ‘money‘
 xtype=61 ‘datetime‘
 xtype=62 ‘float‘
 xtype=98 ‘sql_variant‘
 xtype=99 ‘ntext‘
 xtype=104 ‘bit‘
 xtype=106 ‘decimal‘
 xtype=108 ‘numeric‘
 xtype=122 ‘smallmoney‘
 xtype=127 ‘bigint‘
 xtype=165 ‘varbinary‘
 xtype=167 ‘varchar‘

 xtype=173 ‘binary‘
 xtype=175 ‘char‘
 xtype=189 ‘timestamp‘
 xtype=231 ‘nvarchar‘

 xtype=239 ‘nchar‘
 xtype=241 ‘xml‘
 xtype=231 ‘sysname‘
时间: 2024-11-25 22:10:08

Sql Xtype的相关文章

SQL 通过syscolumns.xtype动态查找指定数据类型字段所包含的数据

表中太多列,只想查找某些比如,数据类型为varchar的字段的数据. 思路:1.先获取列名: select * from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='test_A') 2.查找指定数据类型,xtype就是数据类型,参考如下 syscolumns表内的xtype 查了一下,这些东西都是存于每一个数据库的syscolumns表里面得,name就是列名,xtype就是数据类型

SQL Server 系统表 sysobjects中xtype和type区别

sysobjects 在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中占一行.只有在 tempdb 内,每个临时对象才在该表中占一行. sysobjects 中有二个表示对象类型的字段(type,xtype). type是在 SQL Server 6.0 就有的,xtype在 SQL Server 7.0 才出现的. 对比了一下 type 与 xtype,有一些不同: type:    K = PRIMARY KEY 或 UNIQUE 约束    R = 规则 xtype:

sql server xtype 对应数据类型名称sql查询

SELECT c.name,c.user_type_id,t.name FROM sys.[columns] AS c INNER JOIN sys.types AS t ON t.user_type_id=c.user_type_id 查询xtype对应的类型名称 做orm用到 记录一下

SQL Server xtype的介绍

sysobjects 表 在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中占一行.只有在 tempdb 内,每个临时对象才在该表中占一行. 列名 数据类型 描述 name sysname 对象名. Id int 对象标识号. xtype char(2) 对象类型.可以是下列对象类型中的一种: C = CHECK 约束 D = 默认值或 DEFAULT 约束 F = FOREIGN KEY 约束 L = 日志 FN = 标量函数 IF = 内嵌表函数 P = 存储过程 PK

mysql sql常用语句大全

SQL执行一次INSERT INTO查询,插入多行记录 insert into test.person(number,name,birthday) values(5,'cxx5',now()),(6,'cxx6',now()),(7,'cxx7',now()); 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- 创建 备份数据的 device USE mas

代码生成器Sql Server 和 Mysql 数据库脚本

#SQL SERVER        private string SqlTableList = @"SELECT                                                     so.name,                                                    Convert( VARCHAR(10), ep.[value]) AS [description]                              

实用SQL语句

一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始 备份 BACKUP DATABASE pubs TO testBack 4.说明:创建

sql语句大全

sql语句大全1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 备份BACKUP DATABASE pubs TO testBack4.说明:创建新表create

sql 数据库中只靠一个数据,查询到所在表和列名

有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的.只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名. 前提是要将这个存储过程放在所查询的数据库. 注:1步骤是创建存储过程,可以在任何一个数据库中使用,2步骤是调用它来查找数据库中所有牵扯到的列以及对应的表. 只需要一个数据 真是非常方便 一.首先 点击新建查询 ,左上角选择到自己的数据库,然后把下面这段复制进去  然后运行 CREATE PROCEDURE [