b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

创建和调用MySQL存储过程(2)

电脑杂谈  发布时间:2020-05-17 09:23:45  来源:网络整理

查看存储过程的创建代码

mysql> show create procedure p_test1\G
*************************** 1. row ***************************
           Procedure: p_test1
            sql_mode: STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
    Create Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `p_test1`()
BEGIN
INSERT INTO test_event(username,password,create_time) values(‘tomcat‘, ‘xiaohuahua‘,now());
END
character_set_client: utf8
collation_connection: utf8_general_ci
  Database Collation: utf8_general_ci
1 row in set (0.00 sec)
mysql> 

说明:

默认情况下mysql怎么调用存储过程,存储过程与默认关联. 如果首先要指定该存储过程是在特定下创建的,则在该过程之前添加名称;

在定义过程时,使用DELIMITER //命令从分号临时更改语句的结束符号;到两个//,以便将过程主体中使用的分号直接传递给服务器,而不是由客户端(例如mysql)解释.

示例3: 创建一个MySQL计时器来调用示例2中创建的MySQL存储过程p_test1

mysql怎么调用存储过程_mysql 调用存储过程_oracle 调用存储过程语法

提示创建mysql计时器可以参考此博客文章:

从2018-09-12 17点47分开始每60秒执行一次
DELIMITER //  
CREATE EVENT e_test1
ON SCHEDULE EVERY 60 second STARTS TIMESTAMP ‘2018-09-12 17:47:00‘
ON COMPLETION PRESERVE
DO
BEGIN
CALL p_test1();
END//
delimiter ; 

mysql> select * from test_event;
+----+----------+------------+---------------------+
| id | username | password   | create_time         |
+----+----------+------------+---------------------+
|  1 | tomcat   | xiaohuahua | 2018-09-12 17:18:01 |
|  2 | tomcat   | xiaohuahua | 2018-09-12 17:18:39 |
|  3 | tomcat   | xiaohuahua | 2018-09-12 17:18:45 |
|  0 | tomcat   | xiaohuahua | 2018-09-12 17:47:00 |
|  0 | tomcat   | xiaohuahua | 2018-09-12 17:48:00 |
|  0 | tomcat   | xiaohuahua | 2018-09-12 17:49:00 |
|  0 | tomcat   | xiaohuahua | 2018-09-12 17:50:00 |
|  0 | tomcat   | xiaohuahua | 2018-09-12 17:51:00 |
+----+----------+------------+---------------------+
21 rows in set (0.00 sec)

说明:

在创建的存储过程中设置了需要传递参数的变量时,在调用存储过程时mysql怎么调用存储过程,先通过传递参数值,然后在存储项目中将SQL运算赋给存储项目中设置的变量. 存储过程已执行.

存储过程主体包含在调用过程时必须执行的语句,例如: dml,ddl语句,if-then-else和while-do语句,声明变量的声明语句等.

程序主体格式: 以begin开头,以end结尾(可以嵌套)

复制代码

BEGIN
  BEGIN
    BEGIN
      statements; 
    END
  END
END

复制代码

注意: 每个嵌套块及其中的每个语句都必须以分号结尾. 表示过程主体结尾的begin-end块(也称为复合语句)不需要分号.

[begin_label:] BEGIN
  [statement_list]
END [end_label]
例如:
复制代码
label1: BEGIN
  label2: BEGIN
    label3: BEGIN
      statements; 
    END label3 ;
  END label2;
END label1
复制代码
标签有两个作用:
  ①增强代码的可读性
  ②在某些语句(例如:leave和iterate语句),需要用到标签

创建和调用MySQL存储过程


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-212926-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...