[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数据库的一切信息都保存在它的系统表格里.我怀疑你是 ...
随机推荐
- canvas背景动画
偶然反驳可看到博客背景的炫酷效果 觉得很新奇就去查看了一下源码 结果在git上找到了 记录一下 https://github.com/hustcc/canvas-nest.js/
- git上传到github时犯的错误
以下是git的正确顺序 git config --global user.name "xxx" 全局注册名字 git config --global user.email &quo ...
- Linux下数据库备份
1.登录数据库服务器并切换到数据库用户下 [root@*** ~]# su - oracle 2.测试用户名密码是否能正确连接数据库 [oracle@*** ~]$ sqlplus username/ ...
- alibaba/druid 下的 密码加密
使用ConfigFilter cliangch edited this page on 3 Feb · 12 revisions ConfigFilter的作用包括: 从配置文件中读取配置 从远程ht ...
- SpringCloud系列------Config-Server
关于Config-Server的那些事&踩过的坑! 一.概述 在一个相对成熟,高可用的Spring cloud项目中,都会配置一个配置中心去管理各个服务的配置文件,而往往配置文件不会放到本地配 ...
- [模板] 树状数组 (C++ class)
闲来无事(其实是打了两三道树状数组题),写了个树状数组模板…… /* Author: hotwords */ template<typename tp> class BinTree { p ...
- SmartBinding与kbmMW#1
即将发布的kbmMW,实现了SmartBinding,SmartBinding的设计目标是: 必须易于使用 必须最小化或完全删除锅炉板代码.(你看到这里的趋势了吗?... kbmMW从那时开始就是为了 ...
- c# 连接数据库SqlHelper
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...
- element UI 下拉菜单滚动监听(vue指令)
直接看代码吧,可以直接粘贴此代码到你的编辑器中看效果. <template> <div class="page-component"> <div cl ...
- matlab批量读取一个文件夹里类似命名的mat文件
参考网址: Matlab读取同一路径下多个txt或mat文件总结 matlab 批量读取数据文件.mat .dat 整理:matlab批量读入数据文件的方法 首先命名方式体现在只是名字里数字有变化,其 ...