zoukankan      html  css  js  c++  java
  • 存储过程

    先挖好坑= =

    存储过程
    建立:
    #创建存储过程(查询得到男性或女性的数量, 如果传入的是 0 就女性否则是男性)
    DELIMITER $
    CREATE PROCEDURE student.ges_user_count(IN sex_id INT, OUT user_count INT) BEGIN
    IF sex_id=0 THEN
    SELECT COUNT(*) FROM student.p_user WHERE p_user.sex='女' INTO user_count; ELSE
    SELECT COUNT(*) FROM student.p_user WHERE p_user.sex='男' INTO user_count; END IF;
    END
    $
    调用:
    DELIMITER ;
    SET @user_count = 0;
    CALL student.ges_user_count(1, @user_count);
    SELECT @user_count;
    问题:
    ERROR 1436 (HY000): Thread stack overrun: 13440 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.
    原因:thread_stack过小
    解决:
    Mac下
    vim /etc/my.cnf
    Win下
    修改 my.ini
    用到的命令:
    查看所有存储过程:
    1.select 'name' from student.proc where db='db_name' and type='PROCEDURE'
    2.show procedure status;
    查看存储过程或函数的创建代码:
    show create procedure proc_name;
    show create function func_name;

  • 相关阅读:
    github中建立pages
    批处理指令_windows定时关机脚本
    批处理指令_同步数据脚本
    python_笔记
    python_操作outlook
    按键精灵_一些踩过的坑
    linux_一些踩过的坑
    python_快速排序
    python_jira库的一些常用操作
    jira_一些踩过的坑
  • 原文地址:https://www.cnblogs.com/zhengbin/p/5281380.html
Copyright © 2011-2022 走看看