- PHP有三種方式操作MySQL數據庫
1.MySQL擴展庫
2.mysqli擴展庫
3.pdo
- MySQL數據庫和MySQL擴展庫的區別
***MySQL數據庫是用於存放數據的,指的數DBMS(數據庫管理系統),
可以存放多個數據對象(表、存儲過程、函數…)
ddl:數據定義語言,dml:數據操作語言增刪改查,返回bool值,
dql:select語句,dtl:數據事務語句
***MySQL擴展庫是一些函數,是PHP語言設計者提供給程序員用於
完成MySQL數據庫的各種操作(crud)
- 使用PHP的MySQL擴展庫操作MySQL
1.啓用MySQL擴展庫,在php.ini文件中配置啓用extension=php_mysql.dll
2.創建一張用戶表,就在PHPadmin中建表插入數據(此處設置數據庫名爲:123;表爲:user1,表中有id,name,password,age屬性,其中id是主鍵,自增)
3.PHP代碼演示查詢:
sql1.php
<?php
//****操作數據庫*****
//1.連接數據庫
$conn=mysql_connect("localhost","root","root1142495240");
if (!$conn){
die("鏈接失敗".mysqli_error());
}else {
echo "鏈接成功";
}
//2.選擇數據庫
mysql_select_db("123");
//3.設置操作編碼(最好有)
//4.向數據庫發送指令
//(ddl:數據定義語言,dml:數據操作語言增刪改查,dql:select語句,dtl:數據事務語句)
$sql="select * from user1";
$res=mysql_query($sql, $conn);
//5.接收返貨結果並處理
//第一種取法
while ($row=mysql_fetch_row($res)){
//$row是一個數組
echo "<br>$row[0]--$row[1]--$row[2]";
}
//第二種取法
while ($row=mysql_fetch_row($res)){
foreach ($row as $key=>$val){
echo "--$val";
}
echo "<br>";
}
//6.釋放資源,關閉鏈接
mysql_free_result($res);
//這句話可以沒有,建議有
mysql_close($conn);
注意
1.使用$$res後,及時釋放資源
2.mysql_close()如果沒有,系統也會自動關閉
3.鏈接數據庫後接着關閉鏈接也可以取值
4.從$res獲取行數據的時候,除了mysql_fetch_row($res)只返回索引數組(下標01234),
還有三個方法,分別是:
mysql_fetch_assoc($res) 返回一個關聯數組(下標是表名)
mysql_fetch_array($res) 返回一個索引數組和關聯數組
mysql_fetch_object($res) 返回一個對象
********************************************.
增刪改演示
SQL2.php
<?php
//演示對user1表進行增刪改操作
//刪: $sql="delete from user1 where id=數";
//更新:$sql="updata user1 set age=100 where id = 數值";
$conn=mysql_connect("localhost","root","root1142495240");
if (!$conn){
die("鏈接數據庫出錯la".mysql_error());
}
mysql_select_db("123",$conn);
mysql_query("set names utf8");
$sql="insert into user1 (name,password,age) values('小明','1111','55')";
$res=mysql_query( $sql,$conn);
if (!$res){
echo "操作失敗".mysql_error();
}else {
echo "操作成功";
}
mysql_close($conn);