ql
在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 的语法,可替换成:code
IF OBJECT_ID(N'myschema.mytable', N'U') IS NOT NULL DROP TABLE myschema.mytable;
在低版本执行 DROP TABLE IF EXISTS 会报错 在应使用条件的上下文中指定了非布尔类型的表达式ip