Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL存储过程部分解释_MySQL

WBOY
Freigeben: 2016-06-01 13:44:27
Original
871 Leute haben es durchsucht

bitsCN.com

 

MySQL存储过程部分解释:

 关于MySQL的存储过程

 

存储过程是数据库存储的一个重要的功能,但是MySQL在5.0以前并不支持存储过程,这使得MySQL在应用上大打折扣。好在MySQL 5.0终于开始已经支持存储过程,这样即可以大大提高数据库的处理速度,同时也可以提高数据库编程的灵活性。

 

格式

 

MySQL存储过程创建的格式:CREATE PROCEDURE过程名([过程参数[,...]])   procedure

[特性...] 过程体

 

这里先举个例子:

  

 

1. mysql> DELIMITER // 

 

2. mysql> CREATE PROCEDURE proc1(OUT s int) 

 

3.     -> BEGIN

 

4.     -> SELECT COUNT(*) INTO s FROM user; 

 

5.     -> END

 

6.     -> // 

 

7. mysql> DELIMITER ;

 

 参数

 

MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如:

 

CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形...])

 

IN 输入参数: 表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值

 

OUT 输出参数: 该值可在存储过程内部被改变,并可返回

 

INOUT 输入输出参数: 调用时指定,并且可被改变和返回

 

. IN参数例子

 

创建: 

 

1. mysql > DELIMITER // 

 

2. mysql > CREATE PROCEDURE demo_in_parameter(IN p_in int) 

 

3.      -> BEGIN  

 

4.      -> SELECT p_in; /*查询输入参数*/ 

 

5.      -> SET p_in=2; /*修改*/ 

 

6.      -> SELECT p_in; /*查看修改后的值*/ 

 

7.      -> END;  

 

8.      -> // 

 

mysql > DELIMITER ;

 

OUT参数例子

 

创建:

 

1. mysql > DELIMITER // 

 

2. mysql > CREATE PROCEDURE demo_out_parameter(OUT p_out int) 

 

3.      -> BEGIN

 

4.      -> SELECT p_out;/*查看输出参数*/ 

 

5.      -> SET p_out=2;/*修改参数值*/ 

 

6.      -> SELECT p_out;/*看看有否变化*/ 

 

7.      -> END; 

 

8.      -> // 

 

9. mysql > DELIMITER ;

 

. INOUT参数例子

 

创建:

 

1. mysql > DELIMITER //  

 

2. mysql > CREATE PROCEDURE demo_inout_parameter(INOUT p_inout int)  

 

3.      -> BEGIN

 

4.      -> SELECT p_inout; 

 

5.      -> SET p_inout=2; 

 

6.      -> SELECT p_inout;  

 

7.      -> END; 

 

8.      -> //  

 

9. mysql > DELIMITER ;

 

注释

 

 

 

MySQL存储过程可使用两种风格的注释

 

双模杠:--

 

该风格一般用于单行注释

 

 风格:/* 注释内容*/ 一般用于多行注释

摘自 chizhidan_luck

bitsCN.com
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!