【问题标题】:User defined table in stored procedure存储过程中的用户定义表
【发布时间】:2017-09-15 17:27:29
【问题描述】:

我正在尝试将数据表传递给我的过程。

我创建了一个 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
 )

我正在尝试删除表以使用不同的架构再次创建 使用以下语法。

drop table DT_SimQuestionWebTemp

但是我得到一个错误:

无法删除表“DT_SimQuestionWebTemp”,因为它不存在或您没有权限

我有权删除表,并且我可以使用存储过程中的表。但是我无法通过普通查询删除或从中选择。

知道如何查看表格并将其删除吗?

【问题讨论】:

    标签: sql sql-server stored-procedures user-defined


    【解决方案1】:

    你需要drop type 而不是drop table

     DROP TYPE dbo.DT_SimQuestionWebTemp
    

    【讨论】:

      【解决方案2】:

      你需要的是:

      DROP TYPE dbo.DT_SimQuestionWebTemp;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多