Mik*_*koP 24 mysql stored-procedures
我尝试运行一个命令来删除一个过程:
DROP PROCEDURE create_datetable
Run Code Online (Sandbox Code Playgroud)
通过这样做我得到一个警告:
1304 PROCEDURE create_datetable already exists
Run Code Online (Sandbox Code Playgroud)
在那之后,当我尝试创建一个具有相同名称的新程序时,我得到了相同的警告.
这是什么意思?
bon*_*igo 42
参考:丢弃程序.
代码:
DROP PROCEDURE IF EXISTS procedureName;
...
Run Code Online (Sandbox Code Playgroud)
编辑:
你可以尝试重命名该过程,然后按照这篇文章尝试删除它:重命名一个mysql过程?
试试这个:
UPDATE `mysql`.`create_DataTable`
SET name = '<new_proc_name>',
specific_name = '<new_proc_name>'
WHERE db = '<database>' AND
name = '<old_proc_name>';
Run Code Online (Sandbox Code Playgroud)
另请注意:如果已为此过程授予用户权限,则还需要更新newProcedure中的过程名称.
UPDATE `mysql`.`create_DataTable`
SET Routine_name = '<new_proc_name>'
WHERE Db = '<database>' AND
Routine_name = '<old_proc_name>';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
你有删除所有程序的自由吗?如果是这样,请尝试以下帖子:删除MySQL中的所有存储过程或使用临时存储过程和post2:删除MySQL中的所有存储过程或使用临时存储过程.
| 归档时间: |
|
| 查看次数: |
74829 次 |
| 最近记录: |