**: */
delimiter //
create procedure pro_reg (in nc varchar(50), in pwd varchar(50), in email varchar(50),in address varchar(50))
begin
insert into tb_reg (name, pwd ,email ,address) values (nc, pwd, email, address);
end;
呼叫儲存過程pro_reg,實現將使用者錄入的註冊資訊儲存到資料庫教程
。**如下:
if($sql=$conn->query("call pro_reg('".$nc."','".$pwd."','".$email."','".$address."')"))
else
$link = mysqli_connect('localhost' , 'root' , '12345' , 'test') or die('cant connect to localhost.');
$query_id = mysqli_query($link , 'call myselect();');
while($rs = mysqli_fetch_array($query_id))
mysqli_close($link);
//方法二
$host="localhost";
$user="root";
$password="11212";
$db="samp_db";
$dblink=mysql_connect($host,$user,$password)
or die("can't connect to mysql");
mysql_select_db($db,$dblink)
or die("can't select samp_db");
$res=mysql_query("set @a=$password",$dblink);
$res=mysql_query("call aa(@a)",$dblink);
$res=mysql_query("select @a",$dblink);
$row=mysql_fetch_row($res);
echo $row[0];
/*1。呼叫儲存過程的方法。
a。如果儲存過程有 in/inout引數,宣告乙個變數,輸入引數給儲存過程,該變數是一對,
乙個php變數(也能不必,只是沒有php變數時,沒有辦法進行動態輸入),乙個mysql
變數。b。如果儲存過程有out變數,宣告乙個mysql變數。
mysql變數的宣告比較特別,必須讓mysql伺服器知道此變數的存在,其實也就是執行一條mysql語句。
入set @mysqlvar=$phpvar ;
c。使用mysql_query()/mysql_db_query()執行mysql 變數宣告語句。
mysql_query("set @mysqlvar【=$pbpvar】");
這樣,在mysql伺服器裡面就有乙個變數,@mysqlar。如果時in引數,那麼其值能有phpar傳入。
d。 如果時儲存過程。
1。執行 call procedure()語句。
也就是mysql_query("call proceduer([var1]...)");
2. 如果有返回值,執行select @ar,返回執行結果。
mysql_query("select @var)"
接下來的操作就和php執行一般的mysql語句相同了。能通過mydql_fetch_row()等函式獲得結果。
如果時函式。 直接執行 select function() 就能了。
PHP中使用儲存過程
下面是乙個簡單的存貯過程 create procedure sp mystoreprocedure as select host,user,password from user define oledb connection string provider sqloledb data source ...
儲存過程使用
謂儲存過程就是transact sql語句的預編譯集合,這些語句在乙個名稱下儲存並作為乙個單元進行處理。由於儲存過程被預先編譯過,所以執行起來要比單行sql語句效率高出很多,在應用程式開發過程中應盡可能的採用儲存過程進行資料的增加 更新 刪除和查詢操作,以提公升應用程式的整體執行效率。執行sql s...
使用儲存過程
使用儲存過程的目的是 1.通過把過程封裝進單個易於使用的單元中,來簡化操作。2.無須反覆建立一系列步驟,可以確保資料的完整性。3.簡化變更管理。4.改進效能 預編譯 缺點 1.比基本的sql語句更複雜,程式設計師哭暈,dba開心。2.安全許可權問題,資料庫管理員一般都限制儲存過程的建立許可權。只允許...