程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MYSQL入門知識 >> mysqli的prepare准備語句使用教程

mysqli的prepare准備語句使用教程

編輯:MYSQL入門知識
 

mysqli對prepare的支持對於大訪問量的網站是很有好處的,它極大地降低了系統開銷,而且保證了創建查詢的穩定性和安全性。prepare准備語句分為綁定參數和綁定結果,下面將會一一介紹!

(1)綁定參數

看下面php代碼:


 

<?php
//創建連接
$mysqli=new mysqli("localhost","root","","volunteer");
//檢查連接是否被創建
if (mysqli_connect_errno()) {
	printf("Connect failed: %s\n", mysqli_connect_error());
	exit();
}
/*
 * 創建一個准備查詢語句:
 * ?是個通配符,可以用在任何有文字的數據
 * 相當於一個模板,也就是預備sql語句
 */
if ($stmt = $mysqli->prepare("insert into `vol_msg`(mid,content) values(?,?)")){
	/*第一個參數是綁定類型,"s"是指一個字符串,也可以是"i",指的是int。也可以是"db",
	 * d代表雙精度以及浮點類型,而b代表blob類型,第二個參數是變量
	 */
	$stmt->bind_param("is",$id,$content);
	//給變量賦值
	$id = "";
	$content = "這是插入的內容";
	//執行准備語句
	$stmt->execute();
	//顯示插入的語句
	echo "Row inserted".$stmt->affected_rows;
	//下面還可以繼續添加多條語句,不需要prepare預編譯了
	//關閉數據庫的鏈接
	$mysqli->close();	
}
?>


 

以上php實例運行結果:

Row inserted:1

(2).綁定結果:綁定結果就是將你綁定的字段給php變量,以便必要時使用這些變量

請看下面的php代碼:


 

<?php
//創建連接
$mysqli=new mysqli("localhost","root","","volunteer");
//設置mysqli編碼
mysqli_query($mysqli,"SET NAMES utf8");
//檢查連接是否被創建
if (mysqli_connect_errno()) {
	printf("Connect failed: %s\n", mysqli_connect_error());
	exit();
}
//創建准備語句
if ($stmt = $mysqli->prepare("select mid,content from `vol_msg`")){	
	//執行查詢
	$stmt->execute();
	//為准備語句綁定實際變量
	$stmt->bind_result($id,$content);
	//顯示綁定結果的變量
	while($stmt->fetch()){
		echo "第".$id."條: ".$content."<br />";
	}
	//關閉數據庫的鏈接
	$mysqli->close();	
}
?>
 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved