本文目錄一覽:
- 1、PHP用mysqli連接數據庫,回答unknowndatabase
- 2、安裝了wamp,使用mysqli_connect函數連接數據庫,自己新建的用戶總是連接失敗。
- 3、masql數據庫鏈接失敗;object(mysqli)#1 (0) { }
- 4、PHP使用mysqli擴展連接MySQL數據庫
- 5、PHP無法連接MySQL:die(‘Could not connect: ‘ . mysql_error());
PHP用mysqli連接數據庫,回答unknowndatabase
unknown database說明mysql沒有連接成功。
一個案例:
$conn=mysql_connect(“localhost”,”root”,”123456″) or die(“數據庫服務器連接錯誤”.mysql_error());
mysql_select_db(“db_pursey”,$conn) or die(“數據庫訪問錯誤”.mysql_error());
mysql_query(“set names gb2312”);
還是一樣的錯誤,數據庫訪問錯誤Unknown database ‘db_pursey’
訪問不到該數據庫。
解決方法:請檢查連接端口是不是3306,如果不是就無法連接。
安裝了wamp,使用mysqli_connect函數連接數據庫,自己新建的用戶總是連接失敗。
如果你是通過phpMyAdmin添加mysql用戶。
1.請先使用root用戶登錄phpMyAdmin——”權限”,編輯你新增用戶的權限:
2.普通用戶的”全局權限”是不需要設置的,滾動到“按數據庫指定權限”——下拉你要連接的數據庫,例如:
3.然後勾選”數據”和”結構”,”管理”勾選”LOCK TABLES”,點擊”執行”將給新增用戶指定數據庫權限。
4.然後再使用mysqli_connect連接,祝你好運^^
建議使用sqlbuddy來新增mysql用戶,雖然是英文界面,但是比phpMyAdmin方便許多。
masql數據庫鏈接失敗;object(mysqli)#1 (0) { }
定義和用法
mysql_free_result() 函數釋放結果內存。
如果成功,則返回 true,如果失敗,則返回 false。
語法
mysql_free_result(data)
參數
描述
data 必需。要釋放的結果標識符。該結果標識符是從 mysql_query() 返回的結果。
提示和注釋
注釋:mysql_free_result() 僅需要在考慮到返回很大的結果集時會佔用多少內存時調用。在腳本結束後所有關聯的內存都會被自動釋放。
例子
?php
$con = mysql_connect(“localhost”, “peter”, “abc123”);
if (!$con)
{
die(‘Could not connect: ‘ . mysql_error());
}
$db_selected = mysql_select_db(“test_db”,$con);
$sql = “SELECT * from Person”;
$result = mysql_query($sql,$con);
print_r(mysql_fetch_row($result));
// 釋放內存
mysql_free_result($result);
$sql = “SELECT * from Customers”;
$result = mysql_query($sql,$con);
print_r(mysql_fetch_row($result));
mysql_close($con);
?
PHP使用mysqli擴展連接MySQL數據庫
1.面向對象的使用方式
$db
=
new
mysqli(‘localhost’,
‘root’,
‘123456’,
‘dbname’);
如果建立連接時未指定數據庫則選擇使用的數據庫,切換使用的數據庫
$db-select_db(‘dbname’);
$query
=
“SELECT
*
FROM
user
WHERE
uid=4″;
$result
=
$db-query($query);
$result_num
=
$result-num_rows;
$row
=
$result-fetch_assoc();
//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值
$row
=
$result-fetch_row();
//返回一個列舉數組,可以通過$row[0]的方式取得值
$row
=
$result-fetch_array();
//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值
$row
=
$result-fetch_object();
//返回一個對象,可以通過$row-uid的方式取得值
$result-free();
//釋放結果集
$db-close();
//關閉一個數據庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接
當進行INSERT、UPDATE、DELETE操作時,使用$db-affected_rows查看影響行數
2.面向過程的使用方式
$db
=
mysqli_connect(‘localhost’,
‘root’,
‘123456’,
‘dbname’);
如果建立連接時未指定數據庫則選擇使用的數據庫,切換使用的數據庫
mysqli_select_db($db,
‘dbname’);
查詢數據庫
$query
=
“SELECT
*
FROM
user
WHERE
uid=4″;
$result
=
mysqli_query($db,
$query);
$result_num
=
mysqli_num_rows($result);
返回一行結果
$row
=
mysqli_fetch_assoc($result);
//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值
$row
=
mysqli_fetch_row($result);
//返回一個列舉數組,可以通過$row[0]的方式取得值
$row
=
mysqli_fetch_array($result);
//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值
$row
=
mysqli_fetch_object($result);
//返回一個對象,可以通過$row-uid的方式取得值
斷開數據庫連接
mysqli_free_result($result);
//釋放結果集
mysqli_close($db);
//關閉一個數據庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接
當進行INSERT、UPDATE、DELETE操作時,使用mysqli_affected_rows()查看影響行數
PHP無法連接MySQL:die(‘Could not connect: ‘ . mysql_error());
這個主要就是顯示 出錯信息,方便查錯和調試,如果你知道 這裡會出現什麼問題的話 一般 if(!$q){
exit(‘數據庫連接失敗!!’);
}這樣寫就理友好一些了。
無法連接數據庫
如果用戶名 密碼沒錯的話
可能你的mysql並沒有安裝成window 服務
手動去mysql安裝目錄 下 啟動 bin目錄下的mysqld.exe
原創文章,作者:TCNI,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/134626.html