[英]User defined table in stored procedure
I am trying to pass a datatable to my procedure. 我正在尝试将数据表传递给我的程序。
I have created a SQL Server user-defined table type as below: 我创建了一个SQL Server用户定义的表类型,如下所示:
CREATE TYPE dbo.DT_SimQuestionWebTemp AS TABLE
(
[id] [bigint] IDENTITY(1,1) NOT NULL,
[SimId] [bigint] NOT NULL,
[mobile] [nvarchar](25) NOT NULL,
[LevelId] [int] NULL,
[QuestionId] [int] NULL,
[Question] [nvarchar](500) NULL,
[Answer1] [nvarchar](100) NULL,
[Answer2] [nvarchar](100) NULL,
[Answer3] [nvarchar](100) NULL,
[Answer4] [nvarchar](100) NULL,
[Answer5] [nvarchar](100) NULL,
[Status] [int] NOT NULL
)
I am trying to drop the table to create again with different schema using the below syntax. 我正在尝试删除表,以使用以下语法使用不同的架构再次创建。
drop table DT_SimQuestionWebTemp
however I am getting an error: 但是我得到一个错误:
Cannot drop the table 'DT_SimQuestionWebTemp', because it does not exist or you do not have permission 无法删除表“ DT_SimQuestionWebTemp”,因为该表不存在或您没有权限
and I have permission to drop tables and also I am able to use the table from the stored procedure. 并且我有权删除表,也可以使用存储过程中的表。 However I am not able to drop it or select from it through a normal query. 但是,我无法删除它或通过常规查询从中选择它。
Any idea how to see the table and drop it? 知道如何查看表格并将其删除吗?
您需要drop type
而不是drop table
DROP TYPE dbo.DT_SimQuestionWebTemp
您需要的是:
DROP TYPE dbo.DT_SimQuestionWebTemp;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.