zoukankan      html  css  js  c++  java
  • mysql

    类似于java的方法

    1. 创建:

    
    
    DELIMITER $$   #设置存储过程结束标记,防止混淆,这个符号可以自己设,用完后要改回';'
    CREATE PROCEDURE pro_test( IN 参数名 类型 , OUT 参数名 类型, INOUT 参数名 类型)  #表示传入参数,输出参数,同时输入输出的参数,可以多个。
    BEGIN
        #sql语句
    END $$
    DELIMITER ;

    2. 使用:

    call 存储过程名(参数列表)

    例子1:无参数

    DELIMITER $$
    CREATE PROCEDURE pro_test_no_parameter()
    BEGIN
        INSERT INTO userinfo VALUES(7,'person1','1990-01-01');
    END $$
    DELIMITER ;
    
    CALL pro_test_no_parameter();

    命令行 和 sqlyog中不太一样- -sqlyog中可以的命令行一定可以, 命令行可以的sqlyog有时不好用。。。所以都用sqlyog测试

    例子2:无参数有变量

    DELIMITER $$
    CREATE PROCEDURE pro_test_no_parameter1()
    BEGIN
        DECLARE a INT;
        SET a = 8;
        INSERT INTO userinfo VALUES(a,'person2','1990-02-02');
    END $$
    DELIMITER ;
    
    CALL pro_test_no_parameter1();

    例子3:有参数

    #创建
    DELIMITER $$
    CREATE PROCEDURE pro_test_parameter( IN input INT, OUT output VARCHAR(20), INOUT param INT)
    BEGIN
        SET param = param + 1;
        SELECT username INTO output FROM userinfo WHERE uid = input;
    END $$
    DELIMITER ;
    
    #使用
    SET @p = 2;
    CALL pro_test_parameter(1, @output, @p);
    SELECT @output,@p;  #显示结果

    3. 删除:

    drop procedure 存储过程名;

    4.查看存储结构结构:

    show create procedure pro_test_no_parameter;

    不能修改内部的sql语句。

  • 相关阅读:
    Linux系统 自动化运维工具之cobbler
    Linux系统 中间件服务tomcat
    Linux系统 WEB服务Nginx
    Linux系统 7版本忘记root密码重置
    设置vim显示行号等
    ubuntu 安装nodejs
    新的开始----一个快毕业的学生的小总结
    Excel导出下拉框(导出下拉框较多的选项)
    Excel导出下拉框(导出下拉框较少的选项)
    .NET邮件发送
  • 原文地址:https://www.cnblogs.com/clamp7724/p/11797884.html
Copyright © 2011-2022 走看看