Heim  >  Artikel  >  Backend-Entwicklung  >  Beispielanalyse einer gespeicherten PHP-Prozedur

Beispielanalyse einer gespeicherten PHP-Prozedur

小云云
小云云Original
2018-03-07 09:33:322173Durchsuche

Dieser Artikel teilt Ihnen hauptsächlich die Analyse von PHP-Speicherprozeduren mit. Weitere Informationen zur PHP-Speicherung finden Sie hoffentlich auch auf der chinesischen PHP-Website.

Der Code lautet wie folgt:

$db=new mysqli("localhost","ssss","aaaaa","bbbb"); 
mysqli_query($db,"SET NAMES utf8"); 
$result=$db->query("call gxtj($year,$jd)"); // gxtj是mysql的存储过程名称 [color=gray][/color] 
while( $row = $result->fetch_array(MYSQLI_ASSOC)) //完成从返回结果集中取出一行 
{ 
while ($key=key($row)){ //依次取得字段名 
$value=current($row); //依次取得字段值 
} 
}

Beispiel 1: Gespeicherte Prozedur ohne Parameter

$conn = mysql_connect('localhost','root','root') or die ("数据连接错误!!!");
mysql_select_db('test',$conn);
$sql = "
create procedure myproce()
begin
INSERT INTO user (id, username, sex) VALUES (NULL, 's', '0');
end; 
";
mysql_query($sql);//创建一个myproce的存储过程

Beispiel 2: Gespeicherte Prozedur mit übergebenen Parametern

$sql = "
create procedure myproce2(in score int)
begin
if score >= 60 then
select 'pass';
else
select 'no';
end if;
end; 
";
mysql_query($sql);//创建一个myproce2的存储过程
$sql = "call test.myproce2(70);";
mysql_query($sql);//调用myproce2的存储过程,看不到效果,可以在cmd下看到结果。

Beispiel 3: Gespeicherte Prozedur für ausgehende Parameter

$sql = "
create procedure myproce3(out score int)
begin
set score=100;
end; 
";
mysql_query($sql);//创建一个myproce3的存储过程
$sql = "call test.myproce3(@score);";
mysql_query($sql);//调用myproce3的存储过程
$result = mysql_query('select @score;');
$array = mysql_fetch_array($result);
echo &#39;<pre class="brush:php;toolbar:false">&#39;;print_r($array);

Beispiel 4: Inout gespeicherte Prozedur für ausgehende Parameter

$sql = "
create procedure myproce4(inout sexflag int)
begin
SELECT * FROM user WHERE sex = sexflag;
end; 
";
mysql_query($sql);//创建一个myproce4的存储过程
$sql = "set @sexflag = 1";
mysql_query($sql);//设置性别参数为1
$sql = "call test.myproce4(@sexflag);";
mysql_query($sql);//调用myproce4的存储过程,在cmd下面看效果

Beispiel 5: Speicherung mithilfe von Variablen Prozess

$sql = "
create procedure myproce5(in a int,in b int)
begin
declare s int default 0;
set s=a+b;
select s;
end; 
";
mysql_query($sql);//创建一个myproce5的存储过程
$sql = "call test.myproce5(4,6);";
mysql_query($sql);//调用myproce5的存储过程,在cmd下面看效果

Beispiel 6: Fallsyntax

$sql = "
create procedure myproce6(in score int)
begin
case score
when 60 then select &#39;及格&#39;;
when 80 then select &#39;及良好&#39;;
when 100 then select &#39;优秀&#39;;
else select &#39;未知分数&#39;;
end case;
end; 
";
mysql_query($sql);//创建一个myproce6的存储过程
$sql = "call test.myproce6(100);";
mysql_query($sql);//调用myproce6的存储过程,在cmd下面看效果

Beispiel 7: Schleifenanweisung

$sql = "
create procedure myproce7()
begin
declare i int default 0;
declare j int default 0;
while i<10 do
set j=j+i;
set i=i+1;
end while;
select j;
end; 
";
mysql_query($sql);//创建一个myproce7的存储过程
$sql = "call test.myproce7();";
mysql_query($sql);//调用myproce7的存储过程,在cmd下面看效果

Beispiel 8: Wiederholungsanweisung

$sql = " 
create procedure myproce8()
begin
declare i int default 0;
declare j int default 0;
repeat
set j=j+i;
set i=i+1;
until j>=10
end repeat;
select j;
end; 
";
mysql_query($sql);//创建一个myproce8的存储过程
$sql = "call test.myproce8();";
mysql_query($sql);//调用myproce8的存储过程,在cmd下面看效果

Beispiel neun: Schleifenanweisung

$sql = "
create procedure myproce9()
begin
declare i int default 0;
declare s int default 0;


loop_label:loop
set s=s+i;
set i=i+1;
if i>=5 then
leave loop_label;
end if;
end loop;
select s;
end; 
";
mysql_query($sql);//创建一个myproce9的存储过程
$sql = "call test.myproce9();";
mysql_query($sql);//调用myproce9的存储过程,在cmd下面看效果

Beispiel zehn: Gespeicherte Prozedur löschen

mysql_query("drop procedure if exists myproce");//删除test的存储过程

Verwandte Empfehlungen:

Beispiel für den Aufruf einer gespeicherten PHP-Prozedur

Fortgeschrittenes Lernen von PHP-gespeicherten Routinen und gespeicherten Prozeduren_PHP-Tutorial

Detaillierte Einführung in den Pfadspeicherpfad, wenn PHP Cookies speichert

Das obige ist der detaillierte Inhalt vonBeispielanalyse einer gespeicherten PHP-Prozedur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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