SqlServer系统表与一些属性

系统表的作用:用户自定义的表对自己填充的数据进行操作。而对sql server来说,用户自定义的表就相当于为系统表填充的数据,故用系统表来操作用户数据库,
数据表,存储过程等数据。 系统表操作用户自定义表,用户自定义表操作外来的数据。

1,sysobjects表:万物皆对象,这是一个系统对象表。表,存储过程,触发器都是对象,都存在此表内。此表用crdate 等保存 对象的创建日期。
查找用户表: select *?? from sysobjects where xtype = ‘U’ AND status >0
??????? 因dtproperties虽是系统表,但类型为’U‘, 但status为负数,故得到纯净的用户表时要将其除去。dtproperties这个表里保存的是关系图
查存储过程: select *?? from sysobjects where xtype = ‘P’
注:Type是在SQL SERVER 6.0就有的,xType在SQL SERVER 7.0才出现,Type的保留只是为了向后兼容。
?????
?????? 相关函数:object_id(‘mytable’),查出对象名在sysobjects表中的id值
??????????????????????? object_id ( object_id ), 据id查出对象名

2,sys.servers 查看所有本地服务器及链接服务器 select * from master..sysservers 该表只存储在 master 数据库中。

3,sys.databases 查询非sa创建的所有数据库 select * from master..sysdatabases 该表只存储在 master 数据库中。

4, sys.columns 获取表或视图的所有字段,存储过程或函数的所有参数 select name from syscolumns where id=object_id(‘表名’)

5,sys.indexes 数据库中的每个索引。

6, sys.logins? 每个登录帐户在表中占一行。

7,?? sys.processes 数据库进程信息 ,只存储在 master 数据库中。
?? 查看用户进程信息 select spid,uid,syslogins.name,login_time,net_address from sysprocesses,syslogins where sys.processes.sid=syslogins.sid

8,sysdepends? 查看与某一个表相关的视图、存储过程、函数? select * from sysdepends where depid=object_id(‘表名’)

9,sysmessages SQL SERVER返回的内部错误都有在这里,可自行修改,当错误发生时显示自己指示的信息。

10,sysfiles 保存当前数据库所在文件大小,路径等信息。

11,INFORMATION_SCHEMA 当前数据库的每个 CHECK 约束在该视图中占一行。该信息架构视图返回当前用户对其拥有权限的对象的有关信息。
?????? 查询某个表的哪些字段不允许为空
??????????? select COLUMN_NAME from INFORMATION_SCHEMA.COLUMNS where IS_NULLABLE=’NO’ and TABLE_NAME=’bdorder’

时间: 2024-12-07 00:13:56

SqlServer系统表与一些属性的相关文章

SqlServer系统表认识和操作

地址:http://technet.microsoft.com/zh-cn/library/ms178551.aspx 一.sys.sysindexkeys 包含有关数据库的索引中的键或列的信息.(表主键信息) 列名 数据类型 说明 id int 表的 ID. indid smallint 索引的 ID. colid smallint 列的 ID. keyno smallint 该列在索引中的位置. SqlServer系统表认识和操作,布布扣,bubuko.com

SQLSERVER常用系统表

1.查看表和视图SELECT * FROM sys.objects WHERE object_id = object_id('表名或视图名')在sqlserver中一般可通过查询sys.objects系统表来得知结果,不过可以有更方便的方法 如下: if object_id('tb_table') is not null print 'exist' else print'not exist' 如上,可用object_id()来快速达到相同的目的,tb_table就是我将要创建的资源的名称,所以要

SQLSERVER和ORACLE系统表获取表名 列名以及列的注释

在工作中从数据库取的数据要导出来,但是发现导出的EXCEL中列名都是字段名(英文),为此搜集资料怎么把字段名变为中文名称,而发现ORACLE和SQLSERVER(用的SQLSERVER2008R2)又有所不同,具体如下: SQLSERVER数据库: 系统表: ---获取表的相关信息              select * from SYS.OBJECTS  (说明:name:表名 object_id:表的ID)  ---获取列的相关信息 select * from SYS.COLUMNS (

SQLSERVER 复制表及过程--和复制有关的系统表及系统存储过程

主数据库中的复制表 表名 说明 MSreplication_options 表存储供复制在内部使用的元数据. 此表存储在 master 数据库中. msdb 数据库中的复制表 表名 说明 MSagentparameterlist 表包含复制代理参数信息,该表用于指定可以为给定的代理类型设置的参数. 该表存储在 msdb 数据库中. MSdbms 表包含支持异类数据库复制的所有版本数据库管理系统 (DBMS) 的主列表. 该表存储在 msdb 数据库中. MSdbms_datatype 在异类数据

Sqlserver 中系统表sysobjects、syscolumns以及函数object_id

1.sysobjects 系统对象表. 保存当前数据库的对象,如约束.默认值.日志.规则.存储过程等 sysobjects 重要字段解释: sysObjects ( Name sysname, --object 名称 id int, --object id xtype char(2), -- object 类型 type char(2), -- Object 类型(与xtype 似乎一模一样) uid smallint, -- object 所有者的ID ... --其他的字段不常用到. ) ?

SqlServer查询出数据库中所有的表及其字段属性

代码如下所示: /********************************* SqlServer查询出数据库中所有的表及其字段属性 *********************************/ SELECT ( CASE WHEN a.colorder = 1 THEN d.name ELSE '' END ) AS 表名 ,--如果表名相同就返回空 a.colorder AS 字段序号 , a.name AS 字段名 , ( CASE WHEN COLUMNPROPERTY(a

oracle/ms sql 系统表

sql server系统表详细说明 sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库字符集与排序顺序 sysconfigures主数据库 配置选项 syscurconfigs主数据库当前配置选项 sysdatabases主数据库服务器中的数据库 syslanguages主数据库语言 syslogins主数据库 登陆帐号信息 sysoledbusers主数据库 链接服务器登陆信息 sysprocesses主数据库进程 sysremotelogins主数据库 远程

Sql 2000系统表 语句查询表结构

SQL2000系统表的应用 –1:获取当前数据库中的所有用户表 select Name from sysobjects where xtype='u' and status>=0 –2:获取某一个表的所有字段 select name from syscolumns where id=object_id('表名') –3:查看与某一个表相关的视图.存储过程.函数 select a.* from sysobjects a, syscomments b where a.id = b.id and b.

SQL Server系统表sysobjects介绍与使用

原文:SQL Server系统表sysobjects介绍与使用 关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是否花过比较多的时间来检查系统表格,因为你总是忙于用户表格.但是,你可能需要偶尔做一点不同寻常的事,例如数据库所有的触发器.你可以一个一个地检查表格,但是如果你有500个表格的话,这可能会消耗相当大的人工. 这就让sysobjects表格有了用武之地.虽然我不建议你更新这个表格,但是你当然有权对其进行审查. sysobjects 表 在数据库内创建的每个对象(约