亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

php調用mysql存儲過程實例分析

2024-05-04 23:29:34
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php調用mysql存儲過程,綜合各種常見實例分析了php調用mysql存儲過程的各種常見操作與使用技巧,具有一定的參考借鑒價值,需要的朋友可以參考下
 
 

本文實例分析了php調用mysql存儲過程的方法。分享給大家供大家參考。具體分析如下:

Mysql存儲過程創建語法,代碼如下:

CREATE PROCEDURE和CREATE FUNCTION :

復制代碼代碼如下:
CREATE PROCEDURE sp_name ([proc_parameter[,...]]) 
 
    [characteristic ...] routine_body 
 
CREATE FUNCTION sp_name ([func_parameter[,...]]) 
 
    RETURNS type 
 
    [characteristic ...] routine_body 
 
    proc_parameter: 
 
    [ IN | OUT | INOUT ] param_name type 
 
    func_parameter: 
 
    param_name type 
 
type: 
 
    Any valid MySQL data type 
 
characteristic: 
 
    LANGUAGE SQL 
 
  | [NOT] DETERMINISTIC 
 
  | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } 
 
  | SQL SECURITY { DEFINER | INVOKER } 
 
  | COMMENT 'string' 
 
routine_body: 
 
    Valid SQL procedure statement or statements

當我們看完以后,就可以開始寫一些簡單的存儲過程了,首先建立存儲過程, Create procedure(子程序)、Create function(函數),代碼如下:
復制代碼代碼如下:
Create procedure sp_Name ([proc_parameter ])
routine_body

 

這里的參數類型可以是 IN OUT INOUTT,意思和單詞的意思是一樣的,IN 表示是傳進來的參數,OUT 是表示傳出去的參數,INOUT 是表示傳進來但最終傳回的參數,代碼如下:

復制代碼代碼如下:
Create functionsp_Name ([func_parameter ])
Returns type
Routine_body

 

Returns type 指定了返回的類型,這里給定的類型與返回值的類型要是一樣的,否則會報錯,下面是一個簡單的例子,代碼如下:

復制代碼代碼如下:
mysql> delimiter // 
mysql> create procedure g 
    -> begin 
    -> select version() i 
    -> end 
    -> // 
Query OK, 0 rows affected 
 
mysql> call getversion(@a 
    -> // 
Query OK, 0 rows affected 
 
mysql> select @a; 
    -> // 
+---------------------+ 
| @a                  | 
+---------------------+ 
| 5.0.45-community-nt | 
+---------------------+ 
1 row in set (0.05 sec)

一個獲取當前mysql版本的存儲過程.那么php怎么與mysql的存儲過程相結合呢.以下來自百度知道,代碼如下:
復制代碼代碼如下:
Drop table if exists user;   
    Create table user(   
        Id int unsigned not null auto_increment,   
        Name varchar(20) not null,   
        Pwd char(32) not null,   
        Primary key(Id)   
);

添加用戶的存儲過程,代碼如下:
復制代碼代碼如下:
Delimiter //   
    Create procedure insertuser(in username varchar(20),in userpwd varchar(32))   
    Begin   
        Insert into welefen.user(Name,Pwd) values (username,md5(userpwd));   
    End   
    //

驗證用戶的存儲過程,代碼如下:
復制代碼代碼如下:
Delimiter //   
    Create procedure validateuser(in username varchar(20),out param1)   
    Begin    
        Select Pwd into param1 from welefen.user where Name=username;   
    End   
    //

修改密碼的存儲過程,代碼如下:
復制代碼代碼如下:
Delimiter //   
    Create procedure modifyPwd(in username varchar(20),in userpwd varchar(32))   
    Begin   
        Update welefen.user set Pwd=md5(userpwd) where Name=username;   
    End   
    //

刪除用戶的存儲過程,代碼如下:
復制代碼代碼如下:
Delimiter //   
    Create procedure deleteuser(in username varchar(20))  
Begin   
         delete from welefen.user where Name=username;   
    End   
    //

在客戶端,我們給出如下的程序,代碼如下:
復制代碼代碼如下:
<?php   
     if (!mysql_connect("localhost","root","welefen")){    
         echo "連接數據庫失敗";   
    }   
     if (!mysql_select_db("welefen")){   
         echo "選擇數據庫表失敗<br>";   
    }   
       
    $insert_user=array("welefen","welefen");//這里的welefen分別為用戶名、密碼   
     if (mysql_query("call insertuser('$insert_user[0]','$insert_user[1]')")){   
         echo "添加用戶$insert_user[0]成功<br>";   
    }else {   
         echo "添加用戶$insert_user[0]失敗<br>";   
    }   
       
    $validate_user=array("welefen","welefen");//這里的welefen分別為用戶名、密碼   
    mysql_query("call validateuser('$validate_user[0]',@a)");   
    $Pwd=mysql_query("select @a");   
    $result=mysql_fetch_array($Pwd);   
     if ($result[0]==md5($validate_user[1])){   
         echo "用戶$validate_user[0]驗證正確<br>";   
    }else {   
         echo "用戶$validate_user[0]驗證錯誤<br>";   
    }   
       
    $modify_Pwd=array("welefen","weilefeng"); //welefen為用戶名weilefeng為新密碼   
     if (mysql_query("call modifyPwd('$modify_Pwd[0]','$modify_Pwd[1]')")){  
         echo "用戶$modigy_Pwd[0]的密碼修改成功<br>";   
    }else {
         echo "用戶$modigy_Pwd[0]的密碼修改失敗<br>";   
    }   
       
    $delete_user=array("welefen");           //welefen為用戶名   
     if (mysql_query("call deleteuser('$delete_user[0]')")){   
         echo "用戶$delete_user[0]刪除成功<br>";   
    }else {   
         echo "用戶$delete_user[0]刪除失敗<br>";   
    }   
?>

這樣就完成了,php調用mysql的存儲過程,其實這些簡單的應用,就用不上存儲過程了,實際的應用是比這個復雜的多,可以看出,建立了mysql的存儲過程可以極大的減少了客服端的壓力,但是增加了數據庫服務的壓力,各種利弊得實際去衡量.

 

希望本文所述對大家的php程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲自拍偷拍一区| 全亚洲最色的网站在线观看| 亚洲综合精品一区二区| 欧美日韩国产色| 欧美在线视频在线播放完整版免费观看| 欧美激情喷水视频| 国产成人午夜视频网址| 中文字幕在线日韩| 亚洲激情电影中文字幕| 欧美在线视频观看| 欧美放荡办公室videos4k| 欧美做受高潮1| 国产一区二区在线免费| 亚洲字幕一区二区| 成人在线播放av| 欧美日韩午夜视频在线观看| 91精品视频免费观看| 国产综合福利在线| 日韩av中文字幕在线| 亚洲人a成www在线影院| 欧美精品一二区| 疯狂蹂躏欧美一区二区精品| 亚洲国产日韩欧美在线图片| 丝袜亚洲另类欧美重口| 国产v综合v亚洲欧美久久| 成人免费观看网址| 欧美成人精品h版在线观看| 久久亚洲欧美日韩精品专区| 久久免费视频这里只有精品| 日韩av在线导航| 成人激情春色网| 91亚洲国产精品| 亚洲综合一区二区不卡| 精品亚洲精品福利线在观看| 欧洲成人免费视频| 日韩免费在线看| 91亚洲国产精品| 国内精品在线一区| 国产一区二区三区在线| 欧美人在线观看| 国产精品高精视频免费| 久久国产精品久久久久| 欧美激情亚洲综合一区| 精品国产乱码久久久久久虫虫漫画| 一区二区三区动漫| 久久久久久亚洲精品中文字幕| 最近2019年日本中文免费字幕| 清纯唯美亚洲综合| 国产日本欧美一区| 国产精品三级网站| 国产精品色悠悠| 欧美一级淫片丝袜脚交| 日韩av不卡在线| 成人免费视频97| 欧美大尺度电影在线观看| 亚洲精选一区二区| 亚洲国产精品福利| 亚洲色图综合网| 亚洲欧美激情一区| 51久久精品夜色国产麻豆| 国产精品久久久久影院日本| 精品国产福利在线| 亚洲亚裔videos黑人hd| 欧美性xxxx极品hd满灌| 日韩高清电影免费观看完整| 日韩av在线免费观看| 亚洲精品免费av| 欧美在线视频免费观看| 日韩激情视频在线播放| 中文字幕久热精品在线视频| 亚洲精品国产精品国自产在线| 日韩经典中文字幕| 亚洲第一精品福利| 亚洲欧美综合精品久久成人| 久久久久久久久中文字幕| 欧美国产日韩一区二区| 日韩免费观看在线观看| 欧美性xxxxx极品| 亚洲精品国偷自产在线99热| 国产成人一区二区三区| 亚洲欧美三级伦理| 欧美另类在线观看| 欧美理论电影在线播放| 一本久久综合亚洲鲁鲁| 操人视频在线观看欧美| 欧美做爰性生交视频| 欧美一级视频一区二区| 在线视频国产日韩| 久久久噜久噜久久综合| 91精品国产99| 久久久久久久久久久久av| 欧美性一区二区三区| 久久久久久欧美| 亚洲www在线观看| 久久久国产精品免费| 精品高清美女精品国产区| 欧美午夜精品久久久久久浪潮| 欧美激情一区二区三区久久久| 久久人人爽亚洲精品天堂| 久久久免费电影| 国产精品久久久久7777婷婷| 日韩欧美精品网址| 欧美性猛xxx| 日本精品va在线观看| 成人久久久久久| 日韩精品在线观看一区| 亚洲精品中文字幕女同| 国产精品一区久久| 欧美日韩一区二区在线| 国产精品99久久久久久久久久久久| 久久久久久噜噜噜久久久精品| 中文字幕日韩av| 欧美久久精品一级黑人c片| 一区二区三区四区在线观看视频| 日韩成人网免费视频| 国产成人拍精品视频午夜网站| 亚洲精品久久久久久久久久久久| 欧美日韩美女在线观看| 欧美野外wwwxxx| 久久中文字幕在线| 国产精品高潮呻吟视频| 一区二区三区四区在线观看视频| 久久久久久一区二区三区| 国产日韩欧美在线视频观看| 久久影院资源站| 国产色婷婷国产综合在线理论片a| 国产精品久久久精品| 日韩亚洲精品电影| 成人免费视频在线观看超级碰| 欧美美女操人视频| 亚洲区一区二区| 欧美在线不卡区| 国产精品免费一区二区三区都可以| 国产日韩欧美日韩| 精品久久久视频| 色妞一区二区三区| 国产精品久久91| 91理论片午午论夜理片久久| 国产午夜精品一区理论片飘花| 这里只有精品久久| 68精品国产免费久久久久久婷婷| 欧美精品手机在线| 人人做人人澡人人爽欧美| 日韩电影中文字幕一区| 97热在线精品视频在线观看| 成人免费网站在线看| 色综合久久久久久中文网| 91精品国产自产在线观看永久| 欧美精品性视频| 国产午夜精品视频免费不卡69堂| 日韩亚洲欧美中文高清在线| 亚洲一区美女视频在线观看免费| 日韩中文字幕在线观看| 久久中文精品视频| 欧美老少配视频| 精品欧美一区二区三区| 狠狠躁夜夜躁人人爽天天天天97| 欧美超级乱淫片喷水| 日韩精品免费在线观看| 一本一道久久a久久精品逆3p| 亚州精品天堂中文字幕| 亚洲高清福利视频| 亚洲品质视频自拍网| 久久精品影视伊人网|