Maison > base de données > tutoriel mysql > le corps du texte

MySQL5.0存储过程详细讲解_MySQL

WBOY
Libérer: 2016-06-01 14:03:25
original
638 Les gens l'ont consulté

Introduction 简介 YI,Pj`T5  
pC/ 0'%  
MySQL 5.0 新特性教程是为需要了解5.0版本新特性的MySQL老用户而写的。简单的来说是介绍了“存储过程、触发器、视图、信息架构视图”,在此感谢译者陈朋奕的努力. ,J1|.b 5  
v+931ZV*q  
  希望这本书能像内行专家那样与您进行对话,用简单的问题、例子让你学到需要的知识。为了达到这样的目的,我会从每一个细节开始慢慢的为大家建立概念,最后会给大家展示较大的实用例,在学习之前也许大家会认为这个用例很难,但是只要跟着课程去学,相信很快就能掌握。 E{sA7  
v6grz{ {  
Conventions and Styles 约定和编程风格 "t-_2T%h  
PH$M.  
  每次我想要演示实际代码时,我会对mysql客户端的屏幕就出现的代码进行调整,将字体改成Courier,使他们看起来与普通文本不一样。 M6B~by  
^,MA5pj5v  
  在这里举个例子:mysql> DROP FUNCTION f;Query OK, 0 rows affected (0.00 sec) .~nSXEu  
Kl,#%  
  如果实例比较大,则需要在某些行和段落间加注释,同时我会用将“ nkqQqTv7  
W.-!>mU  
  例如: 2U"eF[1%G  
; {Re614hd  
mAt{h?G92  
mysql> CREATE PROCEDURE p () e8 [j&Pin  
-> BEGIN x4U &  
-> /* This procedure does nothing */ W,bCf3b{3  
-> END;//Query OK, 0 rows affected (0.00 sec) R g|\}'  
\ K+f*~>  
,d:H9VB  
  有时候我会将例子中的"mysql>"和"->"这些系统显示去掉,你可以直接将代码复制到mysql客户端程序中(如果你现在所读的不是电子版的,可以在mysql.com网站下载相关脚本)所以的例子都已经在Suse 9.2 Linux、Mysql 5.0.3公共版上测试通过。 melM%o  
';4(|M4%  
  在您阅读本书的时候,Mysql已经有更高的版本,同时能支持更多OS了,包括Windows,Sparc,HP-UX。因此这里的例子将能正常的运行在您的电脑上。但如果运行仍然出现故障,可以咨询你认识的资深Mysql用户,以得到长久的支持和帮助。 BQ])^~I`  
Why MySQL Statements are Legal in a Procedure Body z B'CzZ]  
  什么MySQL语句在存储过程体中是合法的? [.G 5y>,m%  
/]jP  
  什么样的SQL语句在Mysql存储过程中才是合法的呢?你可以创建一个包含INSERT, UPDATE,DELETE, SELECT, DROP, CREATE, REPLACE等的语句。你唯一需要记住的是如果代码中包含MySQL扩充功能,那么代码将不能移植。在标准SQL语句中:任何数据库定义语言都是合法的,如: C%r  
Y!V4) )I"  
BEz;Q8;  
?-2}9D!:  
_(8)ETMb  
CREATE PROCEDURE p () DELETE FROM t; // JR%GJ1'2q2  
lGs?i 2 4K  
  SET、COMMIT以及ROLLBACK也是合法的,如: I7iDsM  
t(!*x7F>PK  
FxD%+&E7H  
CREATE PROCEDURE p () SET @x = 5; // 2B;hZ'A  
_7ruKxZY  
F)c |OMH  
  MySQL的附加功能:任何数据操作语言的语句都将合法。 E mh D6)  
GJR.P^7t%!  
=4KN 0v4  
CREATE PROCEDURE p () DROP TABLE t; // )T@9ue4  
]Az"WF^;  
Qok (  
  MySQL扩充功能:直接的SELECT也是合法的: uQ.uOkq`  
pD& T3s1  
j&1o&2LD  
CREATE PROCEDURE p () SELECT 'a'; // TY_UUmRDs  
EZd&R1xp  
5ls[l}PxY  
  顺便提一下,我将存储过程中包括DDL语句的功能称为MySQL附加功能的原因是在SQL标准中把这个定义为非核心的,即可选组件。 O|K@/H!`  
"~!6Tw:9KS  
rz]sMTDN]  
The New SQL Statements 新SQL语句 s Dj>ZG"'  
J4{z"\  
Variables 变量 i;>6? O  
/BHC)VxUu  
  在复合语句中声明变量的指令是DECLARE。 y3D[^  
Q6T@cyVG  
  (1) Example with two DECLARE statements 'djnaVKz:!  
^>M[c_ Z  
  两个DECLARE语句的例子 O )V4`tN#  
f|tJ\Y,Ss  
qcN-pc4  
pcA_7@L  
Fzlmm7%  
;_iIl  
'7WWbz0rR  
CREATE PROCEDURE p8 () :q:?9 T[  
!oG  
BEGIN 2 M\`+a  
@b}oh#\r  
DECLARE a INT; F%nx()  
sergz+BW%  
DECLARE b INT; 9UEM8Z;bE9  
n!P7?]t  
SET a = 5; %$V]UQ_Q  
c"-#[>JA  
SET b = 5; TX.!\{%)  
1zOWZ?  
INSERT INTO t VALUES (a); 8

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!