`
北极的。鱼
  • 浏览: 152549 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Sql中判断“数据库"、"表"、"临时表"、"存储过程"和列”是否存在

阅读更多

--判断数据库是否存在 IF EXISTS (SELECT * FROM MASTER..sysdatabases WHERE NAME = '库名') PRINT 'exists ' else PRINT 'not exists' -- 判断要创建的表名是否存在 IF EXISTS (Select * From sysObjects Where Name ='表名' And Type In ('S','U')) PRINT 'exists' ELSE PRINT 'not exists' GO --判断要创建临时表是否存在 If Object_Id( 'Tempdb.dbo.#Test') Is Not NULL--#Test 为临时表名 Begin print '存在 ' End Else Begin print '不存在 ' End --------------- -- 判断要创建的存储过程名是否存在 IF EXISTS (Select * From sysObjects Where Name ='存储过程名' And Type In ('S','P')) PRINT 'exists' ELSE PRINT 'not exists' GO -- 判断列名是否存在 IF EXISTS (SELECT O.NAME AS 表名,C.NAME AS 列名 FROM SYSOBJECTS O INNER JOIN SYSCOLUMNS C ON O.ID=C.ID WHERE O.NAME= '表名' AND C.NAME = '列名') SELECT 'EXISTS' ELSE SELECT 'NOT EXISTS' 判断表名存在的一个函数 IF COL_LENGTH( '表名','列名') IS NULL PRINT 'not exists' ELSE PRINT 'exists'


 

注:a 是一个表,U代表是数据表类型

类似于U的类型代码,如下所示

对象类型:

AF = 聚合函数 (CLR)

C = CHECK 约束

D = DEFAULT(约束或独立)

F = FOREIGN KEY 约束

PK = PRIMARY KEY 约束

P = SQL 存储过程

PC = 程序集 (CLR) 存储过程

FN = SQL 标量函数

FS = 程序集 (CLR) 标量函数

FT = 程序集 (CLR) 表值函数

R = 规则(旧式,独立)

RF = 复制筛选过程

SN = 同义词

SQ = 服务队列   

TA = 程序集 (CLR) DML 触发器

TR = SQL DML 触发器

IF = SQL 内联表值函数

TF = SQL 表值函数

U = 表(用户定义类型)

UQ = UNIQUE 约束

V = 视图

X = 扩展存储过程

IT = 内部表

 

 

 

分享到:
评论

相关推荐

    oracle临时表(事务级、会话级).docx

    当会话或事务结束时,临时表中的数据自动清空,但是临时表的结构和元数据还存储在用户的数据字典中。 会话级临时表 会话级临时表是指临时表中的数据只在会话生命周期中存在,当用户退出会话结束的时候,Oracle ...

    SQLServer系统数据库恢复.pdf

    SQLServer系统数据库恢复 系统数据库恢复 标签:SQL SERVER/MSSQL SERVER/数据库/DBA/故障恢复/master 概述 概述 SQL Server 维护⼀组系统级数据库(称为"系统数据库"),这些数据库对于服务器实例的运⾏⾄关重要。...

    SQL Server存储过程编程经验技巧

    在存储过程中,可以使用临时表和游标来实现复杂的商业逻辑。但是,需要注意在使用完成之后删除临时表,并关闭游标。 SQL Server存储过程是一种强大的数据库对象,可以提高软件系统的可维护性和灵活性。通过编写高效...

    数据库管理系统SQL-Server.doc

    d) Tempdb数据库:存放所有临时表和临时的存储程序,并且提供SQL Server存放目前使用中的表,它是一个全局的资源,临时表和存储程序可供所有用 户使用.每次SQL Server启动时它会自动重建并重设为默认大小,使用中它会...

    实验2 数据库及数据库表的建立.doc

    * 临时表可以用于临时存储数据,避免影响到现有的数据和应用程序。 知识点7: SQL Server 2008 的企业管理器和查询分析器 * SQL Server 2008 的企业管理器是一个图形用户界面工具,用于管理和维护数据库。 * 查询...

    Microsoft SQL Server 2005 Express Edition SP3

    未及时包括在本自述文件中的任何有关 SQL Server 2005 和 SQL Server Express 的信息都将发布到 Microsoft 知识库文章 907284 中。 [顶部] 3.0 安装问题 本部分详细介绍此版本中的安装问题。 3.1 现有的 SQL ...

    jpivot学习总结.doc

    Closure表针对维度表计算distance,Closure表的生产参见例子中的存储过程sp_zycreateorgclosure 例如: <Level name="地区" uniqueMembers="true" nameColumn="ORGENTITYNAME" column="ORGENTITYID" parentColumn=...

    oracle定时删除表空间的数据并释放表空间

    同时,为了释放表空间,需要创建一个临时表,复制原表的所有数据到临时表,然后删除原表,最后再将临时表的数据插入到原表。 代码如下: ```sql create or replace procedure del_tab as v_time number; begin ...

    存储过程的安全及性能优化

    解析阶段:指某个存储过程首次执行时,查询处理器从sys.sql_modules目录视图中读取该存储过程的文本并且检查该过程引用的对象是否存在的过程。 编译阶段:指分析存储过程和生成存储过程执行计划的过程。执行计划是...

    MySQL5.1参考手册官方简体中文版

    8.11. mysqlshow-显示数据库、表和列信息 8.12. myisamlog:显示MyISAM日志文件内容 8.13. perror:解释错误代码 8.14. replace:字符串替换实用工具 8.15. mysql_zap:杀死符合某一模式的进程 9. 语言结构 9.1. ...

    数据库应用系统.pdf

    A、自由表 B、表单 C、临时表 D、数组 2、创建数据库后,系统自动生成扩展名为 ________ 的三个文件。 A、 .SCX、.SCT、.SPX B、 .DBC、.DCT、.DCX C、 .PJX、.PJT、.RPJ D、 ...

    xls转mdb代码以及.exe执行软件

    set @sql='bcp "'+@tbname+'" out "c:\aa.txt" /S"(local)" /P"" /c' exec master..xp_cmdshell @sql --删除临时表 exec('drop table '+@tbname) /********************导整个数据库****************************...

    delphi 开发经验技巧宝典源码06

    0139 使用FileExists函数判断指定文件是否存在 90 0140 使用FileGetAttr函数返回文件的属性 90 0141 使用FileGetDate函数返回文件的修改日期 90 0142 使用FileWrite函数将缓冲区中的内容写入文件 91 4.10 ...

    oracle数据库经典题目

    数据库表空间分为系统表空间和非系统表空间两类,其中非系统表空间包括撤销表空间、临时表空间和用户表空间等。 SYSTEM表空间主要用于存储数据库的数据字典、PL/SQL程序的源代码和解释代码、数据库对象的定义。撤销...

    mysql数据库的基本操作语法

    中括号部分可选的,判断该数据不存在就创建 4、 切换、使用指定数据库 use dbName; 5、 显示当前使用数据库所有的表对象 show tables; 6、 显示表结构describe(desc) desc tableName; 7、 创建一张表 create ...

    Oracle 主要配置文件介绍

    那一行 也可以 设置 NLS_LANG 的值为 AMERICAN_AMERICA.US7ASCII <br>1.2.2 /etc/oratab 文件 /etc/oratab 文件描述目前系统中创建的数据库实例 以及是否通过 dbstart 和 dbshut 来控制该实例的启动...

    第二热电厂MIS系统数据库设计论文

    4.4.2 临时表空间 ERMISTEMP 105 4.4.3 索引表空间ERMISIDX 106 4.5 回退段SQL规程 106 4.6 数据库用户实体创建SQL规程 107 4.7 数据库例程创建SQL规程 107 4.8 数据库角色 107 4.9 角色创建SQL规程 107 4.10 角色...

    oracle 创建表空间、回滚段、用户、表的详细语法

    例如,创建一个名为 tempuser 的用户,密码为 tempuser,默认表空间为 TS_name1,临时表空间为 TS_name2: ```sql CREATE USER tempuser IDENTIFIED BY tempuser DEFAULT TABLESPACE TS_name1 TEMPORARY ...

    2009达内SQL学习笔记

    select:从一个或多个表中检索一个或多个数据列。包含信息:想选择什么表,从什么地方选择。必须要有From子句。(最常用) 当从多张表里查询的时候,会产生笛卡尔积;可用条件过滤它。 当两个表有相同字段时必须加...

Global site tag (gtag.js) - Google Analytics