sql - 有没有办法删除已经绑定(bind)到存储过程的用户定义表类型?

我有一个用户定义的表类型 (UDTT),它已经绑定(bind)了一个存储过程,该存储过程将它用作输入参数。我在 UDTT 结构中犯了一个错误,但我无法更改 UDTT,因此当我尝试删除它时,SSMS 提示它绑定(bind)到存储过程,因此无法删除。有没有办法删除我的UDTT?

谢谢

最佳答案

它在 drop 时是必需的,我通常做的是为自己设置一个遵循此执行的模板脚本:

-- 表构建或类型

if object_id(N'dbo.<tablename>') is null
begin <create table chunk> end

-- 触发掉落

-- UDTT 掉线

-- UDTT 添加

-- 过程添加

然后如果你需要改变一个过程,你只需在那个脚本上寻找它并再次执行脚本。由于过程中没有保存的数据,这解决了类型忽略以及需要处理的重新编译选项。我发现它对开发和测试更有帮助。

https://stackoverflow.com/questions/22496970/

相关文章:

ssis - 如何使用任何命令行、C# 或 T-SQL 导出部署在 "Integration Ser

authentication - oAuth 2.0 - 代表用户行事

sapui5 - 禁用诊断工具快捷键

google-maps-api-3 - 地理距离 : Wolfram Alpha not agree

cartopy - 在 cartopy 轴之间画线

php - 在尝试使用 phpseclib 创建 SFTP 目录之前检查它是否存在

django - Django 中的弱实体

version-control - Mercurial : Change root of named

sql - 如何从 Rails 中的数据库中选择具有 ID 的不同记录?

indexing - MariaDB 中的索引键大小限制是多少?