我目前正在使用SQL Server 2014中的T-SQL脚本.
我需要删除用户定义的表类型,但仅在它存在的情况下,并在删除/删除类型后再次创建它.
我在网上做了一些研究并找到了一个解决方案,遗憾的是,它根本不起作用.
我当前的脚本如下所示:
IF OBJECT_ID('MySchema.tProjectType', 'U') IS NOT NULL
DROP TYPE [MySchema].[tProjectType];
CREATE TYPE [MySchema].[tProjectType] AS TABLE
(
Id INT
, IsPrivate BIT
, IsPublic BIT
);
Run Code Online (Sandbox Code Playgroud)
我的错误信息:
"MySchema.tProjectType"类型已存在,或者您无权创建它.
在SQL Server 2014中删除之前,您知道如何成功检查用户定义的表类型是否存在吗?
谢谢!
小智 34
请尝试这个,使用type_id而不是object_id
IF type_id('[MySchema].[tProjectType]') IS NOT NULL
DROP TYPE [MySchema].[tProjectType];
CREATE TYPE [MySchema].[tProjectType] AS TABLE
(
Id INT
, IsPrivate BIT
, IsPublic BIT
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24622 次 |
| 最近记录: |