[SQL Server] sysobjects的介紹
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的介紹的更多相关文章
- sql*plus常用指令介紹
sql*plus常用指令介紹 1.用set指令來設定SQL*Plus的環境參數值 格式: Set 環境參數名 環境參數值 ex:set feedback on set feedback 8.用show ...
- SQL server sysobjects表说明
sysobjects 表 在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中占一行.只有在 tempdb 内,每个临时对象才在该表中占一行. sysobjects 表结构: 列名 ...
- SQL Server 的 Statistics 簡介
當你要清空「資料表(table)」,或倒入大量「資料(data;record)」,或公司「資料庫(database)」改用新版本要資料大搬家…等情形,不只是要重建「索引(index)」,還應要重建或更 ...
- SQL Server系统表sysobjects介绍与使用(转))
这就让sysobjects表格有了用武之地.虽然我不建议你更新这个表格,但是你当然有权对其进行审查. sysobjects 表 在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中 ...
- SQL Server系统表sysobjects介绍与使用
关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是否花过比较多的时间来检查系统表格,因为你总是忙于用户表格.但是,你可能需要偶尔做一点不同寻常的事,例如数据库所有的触发器.你可 ...
- Browser 與 Server 持續同步的作法介紹 (Polling, Comet, Long Polling, WebSocket)长连接
對 Comet 的懵懂 記得兩年多前,第一次看到 Gmail 中的 GTalk 覺得很好奇:「咦?線上聊天且是 Google 的熱門系統,只用傳統的 AJAX 應該會操爆伺服器吧?」很幸運的,當時前公 ...
- SQL Server系统表sysobjects介绍与使用(转)
SQL Server系统表sysobjects介绍与使用 关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是否花过比较多的时间来检查系统表格,因为你总是忙于用户表格.但是,你可 ...
- SQL Server判断对象是否存在 (if exists (select * from sysobjects )(转)
1 判断数据库是否存在Sql代码 if exists (select * from sys.databases where name = ’数据库名’) drop database [数据库名] ...
- SQL Server中的sysobjects
摘自:http://www.cnblogs.com/bugY/archive/2011/09/21/2184182.html 关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是 ...
随机推荐
- 一个简单的Quartz定时任务
package com.shuadan.quartz; import org.springframework.scheduling.annotation.Scheduled; import org.s ...
- python笔记20-装饰器、作用域
函数的作用域是就近原则,从里往外找,如果自己函数里有,就拿过来如果自己的函数里面没有的话,就去它父级函数里面找,父亲用不了儿子的,儿子可以用父亲的函数只有被调用才会执行# name = 'python ...
- APP测试报告
招标手机APP测试总结报告 作 者: 日 期: 2016-03-10 文档编号: 002 版 本: Ver 1.0 目 录 1.测试概述 1 1.1. 编写目的 1 1. ...
- hive lock命令的使用
1.hive锁表命令 hive> lock table t1 exclusive;锁表后不能对表进行操作 2.hive表解锁: hive> unlock table t1; 3.查看被锁的 ...
- 机器学习笔记(四)Logistic回归模型实现
一.Logistic回归实现 (一)特征值较少的情况 1. 实验数据 吴恩达<机器学习>第二课时作业提供数据1.判断一个学生能否被一个大学录取,给出的数据集为学生两门课的成绩和是否被录取 ...
- leetcode 415 两个字符串相加
string addstring(string s1,string s2) { string ans=""; ; ,j=s2.length()-;i>=||j>=;i- ...
- Windows Server 2012系统上安装.net framework3.5教程
1.先下载WIN2012R2安装NET3.5的专用数据源 https://pan.baidu.com/s/1bqiUTyR 提取码h09k 并解压,比如解压到桌面,解压后的路径为C:\Users\Ad ...
- SQA计划与系统测试
(一)目的 本计划的目的是定义我们该小组所做的“爱上长大”项目的SQA任务和职责,在项目过程中应遵循的流程.规范和约定等,以确保软件质量得到维持. (二)范围 本计划应用于“爱上长大”项目开发的整个生 ...
- git和github的第一次接触
我的github的helloworld链接: https://github.com/xuziqian111/hello-world/blob/master/helloworld.java 我的gith ...
- 模拟ios应用加载页面
1:设置应用程序系统主界面加载接口为空:Main interface=null; 2: 在AppDelegate实现didFinishLaunchingWithOptions方法 - (BOOL)ap ...