SqlServer数据库DROP TABLE IF EXISTS语句
近日碰到SqlServer数据库版本不一致,执行建表脚本时DROP TABLE IF EXISTS语法的小问题,自己做个记录便于后续查看。
在SqlServer2016版本及更高版本,建表前判断表是否存在,可以使用:
DROP TABLE IF EXISTS myschema.mytable;
CREATE TABLE myschema.mytable(STUNAM varchar(20) not null default '',CRTTIM datetime DEFAULT CURRENT_TIMESTAMP, UPDTIM datetime DEFAULT CURRENT_TIMESTAMP , PRIMARY KEY (STUNAM)
);EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'demo表', @level0type=N'SCHEMA', @level0name=N'myschema', @level1type=N'TABLE', @level1name=N'mytable'; -- 添加表注释-- 添加字段注释EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'学生姓名', @level0type=N'SCHEMA', @level0name=N'myschema', @level1type=N'TABLE', @level1name=N'mytable', @level2type=N'column', @level2name=N'STUNAM';
但是在 低版本的SqlServer并不支持, DROP TABLE IF EXISTS 的语法,可替换成:
IF OBJECT_ID(N'myschema.mytable', N'U') IS NOT NULL
DROP TABLE myschema.mytable;
在低版本执行 DROP TABLE IF EXISTS 会报错 在应使用条件的上下文中指定了非布尔类型的表达式
SqlServer数据库DROP TABLE IF EXISTS语句相关推荐
- 2022-12-01:从不订购的客户。找出所有从不订购任何东西的客户,以下数据的答案输出是Henry和Max,sql语句如何写? DROP TABLE IF EXISTS `customers`; C
2022-12-01:从不订购的客户.找出所有从不订购任何东西的客户,以下数据的答案输出是Henry和Max,sql语句如何写? DROP TABLE IF EXISTS `customers`; C ...
- Spark 报错 DROP TABLE IF EXISTS should not show AnalysisException
spark-sql 执行执行 drop table if exists xxxx 的时候,报错信息如下: DROP TABLE IF EXISTS should not show AnalysisEx ...
- oracle 实现 drop table if exists
使用如下代码进行替换: BEGINEXECUTE IMMEDIATE 'DROP TABLE this_table'; EXCEPTIONWHEN OTHERS THENNULL; END;
- 问题总结:判断MS SQLSERVER临时表是否存在 drop table #tempcitys
问题总结:判断MS SQLSERVER临时表是否存在 drop table #tempcitys select * into #tempcitys from hy_citys 上面的语句第一次运 ...
- mysql数据库删除tokudb表 drop table报错unknowntable处理方法【转载】
最近客户现场的tokudb表使用过程中报错unknown table,总结后处理步骤如下: 1. 确定问题表的数据文件 示例sql如下,假设库名为dwh_cmste,表名为cmst_servicelo ...
- MySQL与SQLServer的区别(一千条语句)
ER图.分页.差异.Java连接MySQL SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 ...
- c# mysql executescalar_C# 操作MySQL数据库, ExecuteScalar()方法执行T-SQL语句, COUNT(*), 统计数据...
C# 操作My SQL数据库需要引用"MySql.Data", 可通过两种方式获取. 1.从NuGet下载"Install-Package MySql.Data -Ver ...
- quartz各版本MySQL数据库存储建表SQL语句
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 用quartz管理任务计划很方便,但是当使用数据库作为存储介质的时候,必须要先创建表,不然就会报错. ...
- SqlServer数据库的常用操作-更新中
以下所有操作均可以在对象资源管理器中执行 1.创ii建数据库 create database 学生选课数据库 on (name = '学生选课_m',filename = 'C:\Program Fi ...
最新文章
- 用java向mysql数据库中插入数据为空
- php删除目录下的所有文件和目录
- 区块链用AI和大数据改变行业现状
- 机器学习线性回归_机器学习-线性回归
- ElasticSearch常用命令记录
- c语言学习-判断101-200之间有多少个素数,并输出所有素数及素数的个数
- Hbase命令设置TTL/编码设置TTL
- 植物科学常用数据库和生物信息学工具2020
- 萤火虫小程序_实测!成都人私藏的免费耍水地,抓螃蟹、烤烧烤、赏萤火虫,周末一天来回!...
- Java中IO和NIO的区别
- opencv c++ 检测红色HSV 和RGB
- “贵阳发生了什么”大数据主题报告会在京举行
- ORCAD 原理图中的基本操作
- 无人值守安装操作系统
- vue中的路由跳转和传参
- android 上最强的计算器,史上最强超级计算器发布!完爆科学计算器
- 一天干掉一只Monkey计划(四)——卡通着色,描边
- 负载均衡有哪些常见策略?
- 教你远程桌面如何传递声音
- PicGo配置(gitee)