请问如何在vb中动态删除一个存储过程?

coolfree 2003-07-29 11:59:16
通过向各位学习,我已经知道如何建立存储过程,我想在这个存储过程运行后,删除它,请问,在vb中如何做?
...全文
23 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wdwd05 2003-07-31
  • 打赏
  • 举报
回复
sysobjects 表~

大哥,~~结分很难吗?

存储过程都是保存在sysobjects 这个SQL系统表里面的,所以存储过程名都是保存在sysobjects .name 的字段里面的,所以,首先判断这个字段里面有没有你的存储过程名,如果有就删除~

明白了吗?~~~
sindyzhou 2003-07-30
  • 打赏
  • 举报
回复
是呀,该给分了
阿建像熊猫 2003-07-30
  • 打赏
  • 举报
回复
分。给分。。。
coolfree 2003-07-30
  • 打赏
  • 举报
回复
帮忙解释一下我上面的问题,12:00结贴
阿建像熊猫 2003-07-30
  • 打赏
  • 举报
回复
IF EXISTS (SELECT name FROM sysobjects (系统SQL表名) WHERE name =‘存储过程名’ AND type = 'P')
DROP PROCEDURE 存储过程
coolfree 2003-07-30
  • 打赏
  • 举报
回复
谢谢了,能不能详细点?如何判断是否存在这个存储过程,如果存在就删除?
给点代码
阿建像熊猫 2003-07-30
  • 打赏
  • 举报
回复
不好意思,上边说错了。存储过程名是在sql数据库里sysobjects表里。
阿建像熊猫 2003-07-30
  • 打赏
  • 举报
回复
sql="drop procedure 存储过程名"
sql是记录集可以用在connection和recordset上。
存储过程一定要存在,如果不存在的会报错的。或者可以在数据库(system表)中先查找是不是存在这个存储过程,如果不存在就退出。存在就删除。
hqsee 2003-07-30
  • 打赏
  • 举报
回复
Create Proc DelProc
@ProcName nvarchar(50)
as
Exec('Drop Procedure ' + @ProcName)
coolfree 2003-07-30
  • 打赏
  • 举报
回复
IF EXISTS (SELECT name FROM sysobjects (系统SQL表名)
^^^^^ ??? ^^^^^^^^^^ 哪个表名?
WHERE name =‘存储过程名’ AND type = 'P')
DROP PROCEDURE 存储过程
最后一问,我弄明白了,晚上就结贴
coolfree 2003-07-30
  • 打赏
  • 举报
回复
哈哈,我什么时候不给分啊,索要得有点赤裸裸啊
开玩笑,谢谢朋友
ufcr 2003-07-30
  • 打赏
  • 举报
回复
哈哈

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧