PHP訪問MySQL數(shù)據(jù)庫:

成都創(chuàng)新互聯(lián)專注于耀州網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供耀州營銷型網(wǎng)站建設,耀州網(wǎng)站制作、耀州網(wǎng)頁設計、耀州網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務,打造耀州網(wǎng)絡公司原創(chuàng)品牌,更為您提供耀州網(wǎng)站排名全網(wǎng)營銷落地服務。
因為連接數(shù)據(jù)庫需要較長的時間和較大的資褲稿源源開敬哪銷,所以如果在多個網(wǎng)頁中都要頻繁地訪問數(shù)據(jù)庫,則可以建立與數(shù)據(jù)庫的持續(xù)連接。即調(diào)胡態(tài)用mysql_pconnect()代替mysql_connect()。
基本步驟:
1.連接服務器:mysql_connect();
2.選擇數(shù)據(jù)庫:mysql_select_db();
3.執(zhí)行SQL語句:mysql_query();
查詢:select
顯示:show
插入:insert into
更新:update
刪除:delete
4.關閉結(jié)果集:mysql_free_result($result);
5.關閉數(shù)據(jù)庫:mysql_close($link);
1、用 mysql_connect 的方法,PHP7會報致命錯誤
$conn= mysql_connect('localhost','xueyanxiang','xueyanxiang');
Fatal error : Uncaught Error: Call to undefined function mysql_connect() in /Users/xueyanxiang/work/test/xue.php:31 Stack trace: #0 /Users/xueyanxiang/work/test/xue.php(119): xue-run() #1 {main} thrown in? /Users/xueyanxiang/work/test/xue.php ?on line? 31
原因是:
PHP5中使用mysql_connect()函數(shù)塌信進行連接,但團蠢輪實際上,PHP5.5開始,MySQL就不推薦使用了,屬于廢棄函數(shù)
PHP7中貌似已經(jīng)徹底不支持了,根據(jù)官網(wǎng)說明,取而代之的是如下兩個:
本擴展自 PHP 5.5.0 起已廢棄,并在將來會被移除。應使用?MySQLi?或?PDO_MySQL?擴展來替換之。參見?MySQL:選擇
API?指南以及相關 FAQ?以獲取更多信息。用以替代本函數(shù)的有:
mysqli_connect()
PDO::__construct()
使用時,不要在使用mysql_connect了,可以換用mysqli_connect(),用法基本類似吧,據(jù)說是面向?qū)ο蟮膸臁?/p>
php.ini中,也只有extension=php_mysqli.dll,而不再有extension=php_mysql.dll這個拓展了。檔差
2、可以使用mysqli,對象化,方法名與被廢棄的類似
$conn= mysqli_connect('localhost','xueyanxiang','xueyanxiang');
3、PDO工具,推薦使用
$dbh= "mysql:host=localhost;dbname=test";
$db= new PDO($dbh,'xueyanxiang','xueyanxiang');
$objQuery= $db-query("select * from user;");
$res= $objQuery-fetchAll(PDO::FETCH_ASSOC);
不填寫參數(shù)的話,默認是關聯(lián)和索引都有,如下圖
用ASP連接各種數(shù)據(jù)庫的方法
一、ASP的對象存取數(shù)據(jù)庫方法
在ASP中,用來存取數(shù)據(jù)庫的對象統(tǒng)稱ADO(Active Data Objects),主要含有三種對象:Connection、Recordset 、Command
Connection:負責打開或連接數(shù)據(jù)
Recordset:負責存取數(shù)據(jù)表
Command:負責對數(shù)據(jù)庫執(zhí)行行動查詢命令
二、連接各數(shù)據(jù)庫的驅(qū)動程序
連接各數(shù)據(jù)庫可以使用驅(qū)動程序,也可以使用數(shù)據(jù)源,不洞孫過我建議大家使用驅(qū)動程序,因為使用驅(qū)動程序非常方便、簡單,而使用數(shù)據(jù)源比較麻煩。
ODBC鏈接
適合數(shù)據(jù)庫類型 鏈接方式
access "Driver={microsoft access driver(*.mdb)};dbq=*.mdb;uid=admin;pwd=pass;"
dBase "Driver={microsoft dbase driver(*.dbf)};driverid=277;dbq=------------;"
Oracle "Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;"
MSSQL server "Driver={sql server};server=servername;database=dbname;uid=sa;pwd=pass;"
MS text "Driver={microsoft text driver(*.txt; *.csv)};dbq=-----;extensions=asc,csv,tab,txt;Persist SecurityInfo=false;"
Visual Foxpro "Driver={microsoft Visual Foxpro driver};sourcetype=DBC;sourceDB=*.dbc;Exclusive=No;"
MySQL "Driver={mysql};database=yourdatabase;uid=username;pwd=yourpassword;option=16386;"
OLEDB鏈接
適合的數(shù)據(jù)庫類型 鏈接方式
access "Provider=microsoft.jet.oledb.4.0;data source=your_database_path;user id=admin;password=pass;"
Oracle "Provider=OraOLEDB.Oracle;data source=dbname;user id=admin;password=pass;"
MS SQL Server "Provider=SQLOLEDB;data source=machinename;initial catalog=dbname;userid=sa;password=pass;"
MS text "Provider=microsof.jet.oledb.4.0;data source=your_path;Extended Properties′text;FMT=Delimited′"
而我們在一般情況下使用Access的數(shù)據(jù)庫比較多,在這里我建議大家連接Access數(shù)據(jù)庫使用下面的方法:
dim conn
set conn = server.createobject("adodb.connection")
conn.open = "provider=microsoft.jet.oledb.4.0;" "data source = " server.mappath("../db/bbs.mdb")
其中../db/bbs.mdb是你的數(shù)據(jù)庫存放的相對路徑!緩悶如果你的數(shù)據(jù)庫和ASP文件在同一目錄下,你只納哪鏈要這樣寫就可以了:
dim conn
set conn = server.createobject("adodb.connection")
conn.open = "provider=microsoft.jet.oledb.4.0;" "data source = " server.mappath("bbs.mdb")
有許多初學者在遇到數(shù)據(jù)庫連接時總是會出問題,然而使用上面的驅(qū)動程序只要你的數(shù)據(jù)庫路徑選對了就不會出問題了。
php調(diào)用mysql步驟:1、連接MySQL數(shù)據(jù)庫;2、選擇MySQL數(shù)據(jù)庫;3、執(zhí)行SQL語句;4、關閉結(jié)果集;5、關閉MySQL服務器。
本文操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦
PHP訪問MYSQL數(shù)據(jù)庫的五個步驟詳解(圖)
數(shù)據(jù)庫在我們PHP日常開發(fā)中是必須需要的,那么MYSQL數(shù)據(jù)庫 是一款很多程序員都喜愛的數(shù)據(jù)庫,由于呢 MYSQL 是一個開源的,帶一點半商業(yè)的,市場的占有率比宏櫻野較高,所以一直以來都被認為是 PHP 的最佳搭檔,同時 PHP 也具有很強大的數(shù)據(jù)庫支持能力,本篇主要講解 PHP訪問MySQL數(shù)據(jù)庫的基本步驟。
PHP訪問MySQL數(shù)據(jù)庫的基本步驟如圖所示:
.連接MySQL數(shù)據(jù)庫
使用 mysql_connect()函數(shù)建立與MySQL服務器的連接。有關 mysql_connect()函數(shù)的使用,我們后面會有詳細的介紹。
2.選擇MySQL數(shù)據(jù)庫
使用 mysql_select_db()函數(shù)選擇MySQL數(shù)據(jù)庫服務器的數(shù)據(jù)庫。并與數(shù)據(jù)庫建立連接,有關mysql_select_db()函數(shù)的使用,后面我們會有具體詳解。
3.執(zhí)行 SQL 語句蔽喊
在選擇數(shù)據(jù)庫中使用 mysql_query()函數(shù)執(zhí)行 SQL語句,對數(shù)據(jù)的操作方式主要包括 5種方式,下面我們分別進行介紹。查詢數(shù)據(jù):使用select 語句實現(xiàn)數(shù)據(jù)的查詢功能。
顯示數(shù)據(jù):使用select 語句顯示數(shù)據(jù)的查詢結(jié)果。
插入數(shù)據(jù):使用insert into 語句向數(shù)據(jù)庫中插入數(shù)據(jù)。
更新數(shù)據(jù):使用update 語句更新數(shù)據(jù)庫中的記錄。
刪除數(shù)據(jù):使用 delete語句刪除數(shù)據(jù)庫中的記錄!
mysql_query()函數(shù)的具體使用后面有具體介紹~
4.關閉結(jié)果集
數(shù)據(jù)庫操作完成后,需要關閉結(jié)果集,以釋放系統(tǒng)資源,語法格式如下:mysql_free_result($result);
技巧:
如果在多個網(wǎng)頁中都要頻繁進行數(shù)據(jù)庫訪問,那么可以建立與數(shù)據(jù)庫服務器的持續(xù)連接來提高效率,因為每次與數(shù)據(jù)庫服務器的連接需要較長的時間和交大的資源開銷,持續(xù)的連接相對來說會更有效率,建立持續(xù)連接的方法就是在數(shù)據(jù)庫間接時,調(diào)用函數(shù) mysql_pconnect()代替mysql_connect函數(shù)。建立的持續(xù)連接在本程序結(jié)束時,不需要頌晌調(diào)用 mysql_colse()來關閉與數(shù)據(jù)庫服務器的連接。下次程序在此執(zhí)行 mysql_pconnect()函數(shù)時,系統(tǒng)自動直接返回已經(jīng)建立的持續(xù)連接ID號,而不再去真的連接數(shù)據(jù)庫。
5.關閉MySQL服務器
沒使用一次 mysql_connect()或者mysql_query()函數(shù),都會消耗系統(tǒng)資源,再少量用戶放完 web 網(wǎng)站時問題還不大,但如果用戶連接超過一定數(shù)量時,就會造成系統(tǒng)性能下降,甚至是死機,為了避免這種現(xiàn)象的發(fā)生,在完成數(shù)據(jù)庫的操作后,應該使用 mysql_close()函數(shù)關閉與MYSQL服務器的連接,以節(jié)省系統(tǒng)資源。
語法格式如下:mysql_close($link);
說明:
PHP 中與數(shù)據(jù)庫的連接是非持久連接,系統(tǒng)會自動回收,一般不用設置關閉,但是如果一次性范湖的結(jié)果集比較大,或者網(wǎng)站訪問量比價多,那么最好使用 mysql_close()函數(shù)手動進行釋放。
PHP訪問MySQL數(shù)據(jù)庫的步驟就結(jié)束了,是不是很簡單。
推薦學習:《PHP視頻教程》
以上就是php調(diào)用mysql步驟的詳細內(nèi)容,更多請關注php中文網(wǎng)其它相關文章!
當前題目:php數(shù)據(jù)庫連接教程 php實現(xiàn)數(shù)據(jù)庫連接
網(wǎng)站網(wǎng)址:http://chinadenli.net/article40/ddpeoeo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站內(nèi)鏈、定制網(wǎng)站、小程序開發(fā)、云服務器、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)