zoukankan      html  css  js  c++  java
  • MYSQL alter procedure alter function 它们只可以更改过程的特性,不可以更改过程的逻辑。

    例子:

      delimiter //
      create procedure proc_a(in numberA int) 这样create procedure 是正确的
      begin
        select numberA;
      end //
      delimiter ;

      delimiter //
      alter procedure proc_a(in numberA int) 这样是不行的,在mysql 中alter 只可以更改它的特性不可以改逻辑。
      begin
        select numberA;
      end //
      delimiter ;

    ALTER {PROCEDURE | FUNCTION} sp_name [characteristic ...]

    characteristic:
    { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
    | SQL SECURITY { DEFINER | INVOKER }
    | COMMENT 'string'
    很好,可惜的是你没看懂。这个说明中根本就没提routine_body

    仔细和下面的语法对比一下,看看有什么差别。
    CREATE
    [DEFINER = { user | CURRENT_USER }]
    PROCEDURE sp_name ([proc_parameter[,...]])
    [characteristic ...] routine_body

    正确,只能修改其特性,不能修改代码。

  • 相关阅读:
    Java 连接 Memcached 服务
    Memcached命令-存储命令-查找命令-清理命令
    memcache安装
    Python爬虫模拟登录带验证码网站
    HashMap原理
    redis 在java中的使用
    redis 事务
    Redis命令续
    Redis命令
    ApplicationListener用法
  • 原文地址:https://www.cnblogs.com/JiangLe/p/4110866.html
Copyright © 2011-2022 走看看