sysobjects表

數據庫中所創建的每個對象(約束、默認值、日誌、規則、存儲過程等)都各以一行資訊呈現於表中。

而臨時對象只有在tempdb內,才在該表中各佔一行。

sysobjects 表結構:

列名 數據類型 描述
name sysname 對象名,常用列
id int 對象標識號
xtype char(2) 對像類型。常用列。xtype可以是下列對像類型中的一種:  
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 所有者用戶對象編號
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   保留

可用where條件命令列出所感興趣的對象:

SELECT  *  FROM sysobjects WHERE xtype =  ' V '

判斷數據庫中是否已經存在某個表,有的話就刪除該表

-- 方法一:
if exists ( select * from dbo.sysobjects where id = object_id (N ' [dbo].[表名] ' ) and OBJECTPROPERTY (id, N ' IsUserTable ' ) = 1 )
drop table [ dbo ] . [ 表名] -- 方法二:
if exists ( select * from sysobjects where id = object_id (N ' 表名' ) and OBJECTPROPERTY (id, N ' IsUserTable ' ) = 1 )
drop table [ dbo ] . [ 表名] -- 方法三:
if ( Exists ( Select * From SysObjects Where xtype = ' U ' And Name = ' 表名' ))
drop table [ dbo ] . [ 表名]

註1: N''代表Unicode類型.可以支持不同語種的對象名

註2:OBJECTPROPERTY避免誤刪非使用者創建的資料

    OBJECTPROPERTY ( id , property )

    id:表示當前數據庫中對象ID的表達式。id是int,並且被假定為當前數據庫上下文中的模式作用域對象。

    property:是表示由id指定的對象返回的信息的表達式。

    如果為True 回傳 1,如果為Falsec回傳 0。

[SQL Server] sysobjects的介紹的更多相关文章

  1. sql*plus常用指令介紹

    sql*plus常用指令介紹 1.用set指令來設定SQL*Plus的環境參數值 格式: Set 環境參數名 環境參數值 ex:set feedback on set feedback 8.用show ...

  2. SQL server sysobjects表说明

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

  3. SQL Server 的 Statistics 簡介

    當你要清空「資料表(table)」,或倒入大量「資料(data;record)」,或公司「資料庫(database)」改用新版本要資料大搬家…等情形,不只是要重建「索引(index)」,還應要重建或更 ...

  4. SQL Server系统表sysobjects介绍与使用(转))

    这就让sysobjects表格有了用武之地.虽然我不建议你更新这个表格,但是你当然有权对其进行审查. sysobjects 表  在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中 ...

  5. SQL Server系统表sysobjects介绍与使用

    关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是否花过比较多的时间来检查系统表格,因为你总是忙于用户表格.但是,你可能需要偶尔做一点不同寻常的事,例如数据库所有的触发器.你可 ...

  6. Browser 與 Server 持續同步的作法介紹 (Polling, Comet, Long Polling, WebSocket)长连接

    對 Comet 的懵懂 記得兩年多前,第一次看到 Gmail 中的 GTalk 覺得很好奇:「咦?線上聊天且是 Google 的熱門系統,只用傳統的 AJAX 應該會操爆伺服器吧?」很幸運的,當時前公 ...

  7. SQL Server系统表sysobjects介绍与使用(转)

    SQL Server系统表sysobjects介绍与使用 关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是否花过比较多的时间来检查系统表格,因为你总是忙于用户表格.但是,你可 ...

  8. SQL Server判断对象是否存在 (if exists (select * from sysobjects )(转)

    1 判断数据库是否存在Sql代码 if exists (select * from sys.databases where name = ’数据库名’)    drop database [数据库名] ...

  9. SQL Server中的sysobjects

    摘自:http://www.cnblogs.com/bugY/archive/2011/09/21/2184182.html 关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是 ...

随机推荐

  1. react系列笔记:第二记-中间件

    中间件所做的事情就是在action发起后,到reducer之前做扩展,实现的方式是对store的dispatch进行包装 store.dispatch => [middlewales] => ...

  2. MinHook测试分析02 (x64)

    在X64模式中,存在的问题是JMP指令和整个地址空间相比仅仅覆盖了很窄的范围.因此引入一个中继函数(Relay Function)来实现对64位Detour函数地址的跳转. 在hook的分析之前,先谈 ...

  3. 《JavaScript Dom 编程艺术》读书笔记-第10章

    用JS实现动画~内容包括: 1. 动画基础知识 2. 用动画丰富网页的浏览效果 动画就是让元素的位置随时间而不断变化. 位置: //CSSelement{ position:absolute; top ...

  4. SQL 查找存在某内容的存储过程都有哪些

    --查找存在某表名的存储过程 SELECT distinct b.name from syscomments a,sysobjects b  WHERE a.id=b.id and a.TEXT LI ...

  5. WebSocket对象的“readyState”属性记录连接过程中的状态值

    websocket的两个属性:readyState和bufferedAmount. 根据readyState属性可以判断webSocket的连接状态,该属性的值可以是下面几种: 0 :对应常量CONN ...

  6. vim 匹配查找指定位置的数字,并将数字做运算后赋值

    举例,以下文本中有个DSC开头的以数字命名的jpg文件,我想修改文件名为在原来的基础上加上32,比如第一行中的字符改为:DSC00099.JPG 在vim中输入: :%s/DSC[]\+\(\d\+\ ...

  7. js date setInterval 时间 时钟 getFullYear ,JavaScript

    js 创建时钟: 1.参考链接:  注意 getYear  (两位 或者 四位) 改成 getFullYear js操作时间 2.实例: html: <span class="glyp ...

  8. EF简单的CURD操作

    /// <summary> /// EF添加数据 /// </summary> /// <param name="sender"></pa ...

  9. flock

    为了确保操作的有效性和完整性,可以通过锁机制将并发状态转换成串行状态.作为锁机制中的一种,PHP的文件锁也是为了应对资源竞争.假设一个应用场景,在存在较大并发的情况下,通过fwrite向文件尾部多次有 ...

  10. vue添加页面键盘事件

    我司开发项目,用的是vue+elementUI,做登陆页面的时候,点击enter键的时候要实现和点击登陆按钮一样的功能,所以就百度了一下,于是一通百度之后,就在点击按钮上面直接添加了@keyup.en ...