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

mssql update from 语法

复制代码 代码如下:

update a set a.columnname=b.columnname from a,b where b.id=1

1.系统表sysobjects

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

列名 数据类型 说明

name


sysname


对象名


id


int


对象标识号


xtype


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


smallint


对象所有者的架构 ID。

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

重要提示:

如果使用以下任何一个 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


smallint


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


status


int


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


base_schema_ver


int


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


replinfo


int


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


parent_obj


int


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


crdate


datetime


对象的创建日期。


ftcatid


smallint


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


schema_ver


int


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


stats_schema_ver


int


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


type


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


smallint


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


sysstat


smallint


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


indexdel


smallint


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


refdate


datetime


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


version


int


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


deltrig


int


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


instrig


int


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


updtrig


int


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


seltrig


int


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


category


int


用于发布、约束和标识。


cache


smallint


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

参考 sys.sysobjects (Transact-SQL)

 

2.syscolumns

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

列名 数据类型 说明

name


sysname


列名或过程参数的名称。


id


int


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


xtype


tinyint


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


typestat


tinyint


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


xusertype


smallint


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


length


smallint


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


xprec


tinyint


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


xscale


tinyint


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


colid


smallint


列 ID 或参数 ID。


xoffset


smallint


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


bitpos


tinyint


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


reserved


tinyint


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


colstat


smallint


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


cdefault


int


此列的默认值的 ID。


domain


int


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


number


smallint


过程分组时的子过程号。

0 = 非过程项


colorder


smallint


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


autoval


varbinary(8000)


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


offset


smallint


此列所在行的偏移量。


collationid


int


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


status


tinyint


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

0x08 = 列允许空值。

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

0x40 = 参数为 OUTPUT 参数。

0x80 = 列为标识列。


type


tinyint


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


usertype


smallint


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


printfmt


varchar(255)


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


prec


smallint


此列的精度级别。

-1 = xml 或大值类型。


scale


int


此列的小数位数。

NULL = 数据类型不是数值。


iscomputed


int


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

0 = 非计算列。

1 = 计算列。


isoutparam


int


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

1 = True

0 = False


isnullable


int


指示列是否允许空值:

1 = True

0 = False


collation


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='DROP table  '+@n
         exec( @es)  
  fetch next from dlist into @n
 end
close dlist
DEALLOCATE dlist

时间: 2025-01-24 11:49:19

mssql数据库中的表、字段sql语句_MsSql的相关文章

SQLServer中用T—SQL命令查询一个数据库中有哪些表的sql语句_MsSql

1.查询SQL中的所有表: Select TABLE_NAME FROM 数据库名称.INFORMATION_SCHEMA.TABLES Where TABLE_TYPE='BASE TABLE' 执行之后,就可以看到数据库中所有属于自己建的表的名称 2.查询SQL中所有表及列: Select dbo.sysobjects.name as Table_name, dbo.syscolumns.name AS Column_name FROM dbo.syscolumns INNER JOIN d

请问大神在数据库中可以执行的sql语句,为什么通过java类连接数据库执行报错

问题描述 请问大神在数据库中可以执行的sql语句,为什么通过java类连接数据库执行报错 报错信息: java.sql.SQLException: Already closed. 解决方案 这个错误提示并不是SQL语句的错误,而是Java的SQL操作类的连接对象已经关闭了,不能执行SQL而报出的异常. 解决方案二: 连接已经关了,当然出错了 解决方案三: 数据库为open,先open 在进行相应cmd命令执行. 解决方案四: 你的连接关闭了,jdbc去连接数据库啊 解决方案五: 这个问题还不是你

sql删除数据库中所有表与数据语句

使用sql删除数据库中所有表是不难的,就是遍历一下数据库中所有用户表,并将它清除,下边是具体的sql语句,在关键部分已经作了详细的注释:  代码如下 复制代码 --变量@tablename保存表名 declare @tablename nvarchar(100) --将用户表全部保存到临时表#tablename中 SELECT [name] into #tablename FROM sysobjects WHERE type = 'U'; --当#tablename有数据时 while(sele

SQLServer用t-sql命令批量删除数据库中指定表(游标循环删除)_MsSql

当我们需要批量删除数据库中的表时,对于单个删除一些表是否感到烦躁,厌倦,干脆写个脚本用得了. 本脚本使用游标循环删除,对于数量比较小,用游标暂不会造成恶劣影响. 复制代码 代码如下: DECLARE @tablename VARCHAR(30),@sql VARCHAR(500)DECLARE cur_delete_table CURSOR READ_ONLY FORWARD_ONLY FORSELECT name FROM sysobjects WHERE name LIKE 'PUB%' A

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

mssql update from 语法 复制代码 代码如下:update a set a.columnname=b.columnname from a,b where b.id=1 1.系统表sysobjects 在数据库中创建的每个对象(例如约束.默认值.日志.规则以及存储过程)都对应一行. 列名 数据类型 说明 name sysname 对象名 id int 对象标识号 xtype char(2) 对象类型.可以是以下对象类型之一: AF = 聚合函数 (CLR) C = CHECK 约束

在MySQL数据库中使用C执行SQL语句

mysql|数据|数据库|语句|执行 与PostgreSQL相似,可使用许多不同的语言来访问MySQL,包括C.C++.Java和Perl.从Professional Linux Programming中第5章有关MySQL的下列章节中,Neil Matthew和Richard Stones使用详尽的MySQL C接口向我们介绍了如何在MySQL数据库中执行SQL语句.他们将讨论返回数据的语句,例如INSERT以及不返回数据的语句,例如UPDATE和DELETE.然后,他们将编写从数据库检索数据

在MySQL数据库中使用C执行SQL语句(1)

与PostgreSQL相似,可使用许多不同的语言来访问MySQL,包括C.C++.Java和Perl.从Professional Linux Programming中第5章有关MySQL的下列章节中,Neil Matthew和Richard Stones使用详尽的MySQL C接口向我们介绍了如何在MySQL数据库中执行SQL语句.他们将讨论返回数据的语句,例如INSERT以及不返回数据的语句,例如UPDATE和DELETE.然后,他们将编写从数据库检索数据的简单程序. 执行SQL语句 现在,我

在MySQL数据库中使用C执行SQL语句的方法_Mysql

他们将讨论返回数据的语句,例如INSERT以及不返回数据的语句,例如UPDATE和DELETE.然后,他们将编写从数据库检索数据的简单程序 执行SQL语句 现在,我们已经有了一个连接,并且知道如何处理错误,是时候讨论使用我们的数据库来作一些实际工作了.执行所有类型的SQL的主关键字是mysql_query: int mysql_query(MYSQL *connection, const char *query) 正如您所见,它非常简单.它取一个指向连接结构的指针和包含要执行的SQL的文本字符串

mysql数据库实现关联表更新sql语句

比如有两张表,其中一张表某个字段的值要关联另一张表进行统计,就要用到mysql的update方法,并且left join另一张表进行联合查询. 表1 表2 需求是:统计表1中id,也就是表2中的tagid出现的次数,更新到表1的videonum字段中.这时候需要关联两张表更新表1并且进行统计. mysql关联表更新统计 sql语句如下:  代码如下 复制代码 UPDATE v9_keyword as a LEFT JOIN v9_keyword_data as b on a.id=b.tagid