php操作mysql常用方法,php連接mysql的方式

本文目錄一覽:

PHP中如何操作MySQL

在這種情況下,雖然省略了分號,但是 PHP 在執行 MySQL 命令時會自動的幫你加上的。另外還有一個不要加分號的情況。當你想把要欄位的豎者排列顯示下來,而不是像通常的那樣橫著排列時,你可以用 G 來結束一行 SQL 語句,這時就用不上分號了,例如:SELECT * FROM PENPALS WHERE USER_ID = 1G TEXT、DATE、和 SET 數據類型MySQL 數據表的欄位必須有定義一個數據類型。這有大約 25 種選擇,大部分都是直接明了的,就不多費口舌了。但有幾個有必要提一下。TEXT 不是一種數據類型,雖然可能有些書上是這麼說的。它實際上應該是「 LONG VARCHAR 」或者「 MEDIUMTEXT 」。DATE 數據類型的格式是 YYYY-MM-DD ,比如: 1999-12-08 。你可以很容易的用 date 函數來得到這種格式的當前系統時間: date(“Y-m-d”)並且,在 DATA 數據類型之間可以作減法,得到相差的時間天數:$age = ($current_date – $birthdate); 集合SET 是一個有用的數據類型,它和枚舉 ENUM 有點相似,只不過是 SET 能夠保存多個值而 ENUM 只能保存一個值而已。而且, SET 類型最多只能夠有 64 個預定的值,而 ENUM 類型卻能夠處理最多 65,535 個預定義的值。而如果需要有大於 64 個值的集合,該怎麼辦呢?這時就需要定義多個集合來一起解決這個問題了。通配符SQL 的通配符有兩種:「 * 」和「 % 」。分別用在不同的情況下。例如:如果你想看到資料庫的所有內容,可以像這樣來查詢:SELECT * FROM dbname WHERE USER_ID LIKE ‘%’; 這兒,兩個通配符都被用上了。他們表示相同的意思 ? 都是用來匹配任何的字元串,但是他們用在不同的上下文中。「 * 」用來匹配欄位名,而「 % 」用來匹配欄位值。另外一個不容易引起注意的地方是「 % 」通配符需要和 LIKE 關鍵字一起使用。還有一個通配符,就是下劃線「 _ 」,它代表的意思和上面不同,是用來匹配任何單個的字元的。NOT NULL 和空記錄一個值為 NULL 的紀錄和一個空紀錄是有一些區別的。 % 通配符可以匹配空紀錄,但是卻不能匹配 NULL 紀錄。在某些時候,這種區別會造成一些意想不到的後果。就我的經驗而言,任何欄位都應該聲明為 NOT NULL 。這樣下面的 SELECT 查詢語句就能夠正常運轉了: if (!$CITY) {$CITY =”%”;}$selectresult = mysql_query (“SELECT * FROM dbname WHERE FIRST_NAME =’ 柳’ AND LAST_NAME =’ 如風’ AND CITY LIKE ‘$CITY’ “); 在第一行中,如果用戶沒有指定一個 CITY 值,那麼就會用通配符 % 來代入 CITY 變數,這樣搜索時就會把任何的 CITY 值都考慮進去,甚至包括那些 CITY 欄位為空的紀錄。但是如果有一些紀錄,它的 CITY 欄位值是 NULL ,這時問題就出現了。上面的查詢是不能夠找到這些欄位的。問題的一個解決辦法可以是這樣: if (!$CITY) { $CITY =”%”; }$selectresult = mysql_query (“SELECT * FROM dbname WHERE FIRST_NAME =’ 柳’ AND LAST_NAME =’ 如風’ AND (CITY LIKE ‘$CITY’ OR CITY IS NULL)”); 注意在搜索 NULL 時,必須用「 IS 」關鍵字,而 LIKE 時不會正常工作的。

php操作MYSQL資料庫的步驟是什麼?

1.鏈接資料庫所在的伺服器 mysql_connect 如:mysql_connect(“127.0.0.1″,”root”,”111111″) or die(“未能鏈接上”);

2.選擇資料庫 mysql_select _db($db) or die(“資料庫鏈接錯誤!”)

3.建立資源標識符 $r= mysql_query($sql)

4.讀出 mysql_fetch_rows($r),mysql_fetch_assoc($r)

如:if(mysql_num_rows($r)0){

while($rows=mysql_fetch_assoc($r)){

echo $rows[“id”].”-“.$rows[“name”];

}

}

5.釋放資源 mysql_query($r);

PHP操作mysql資料庫的步驟

PHP訪問MySQL資料庫:

因為連接資料庫需要較長的時間和較大的資源開銷,所以如果在多個網頁中都要頻繁地訪問資料庫,則可以建立與資料庫的持續連接。即調用mysql_pconnect()代替mysql_connect()。

基本步驟:

1.連接伺服器:mysql_connect();

2.選擇資料庫:mysql_select_db();

3.執行SQL語句:mysql_query();

查詢:select

顯示:show

插入:insert

into

更新:update

刪除:delete

4.關閉結果集:mysql_free_result($result);

5.關閉資料庫:mysql_close($link);

怎樣用PHP中的MySQL操作函數

1. 建立MySQL 連接:mysql_connect

resource mysql_connect([string $server[, string $username [, string $password [, bool $new_link [, int $client flags]]]]])

打開或重複使用一個到MySQL伺服器的連接。其中,server代表MySQL伺服器,可以包括埠號,例如「hostname:port」。username和password分別代表登錄MySQL伺服器使用的用戶名和密碼。

2. 選擇 MySQL 資料庫:mysql_select_db

bool mysql_select_db(string $database_name[, resource $link_identifier])

設定與指定的連接標識符所關聯的伺服器上的當前資料庫。如果沒有指定連接標識符,則使用上一個打開的連接。如果沒有打開的連接,本函數將無參數地調用mysql_connect()來嘗試打開一個資料庫連接。如果成功則返回true,失敗則返回false。每個其後的mysgl_query()調用都會作用於活動資料庫。

3. 執行查詢:mysql_query

resource mysql_query(string $query[, resource $link_identifier])

向與指定的連接標識的關聯的伺服器中的當前活動資料庫發送一條查詢。如果沒有指定 link_identifier,則使用上一個打開的連接。如果沒有打開的連接,本函數會嘗試無參數地調用mysql_connect()函數來建立一個連接,查詢結果會被緩存。mysql_query()僅對SELECT、SHOW、EXPLAIN或DESCRIBE語句返回一個資源標識符,如果查詢執行不正確則返回false。對於其他類型的SQL語句,mysgl_query()在執行成功時返回true,出錯時返回false。非false的返回值意味著查詢是合法的並能夠被伺服器執行但是並不說明任何影響到的或返回的行數。因為一條查詢執行成功了但並未影響到或並未返回任何行的情況是可能發生的。

4. 從結果集中取得一行作為枚舉數組:mysql_fetch_row

array mysql_fetch_row(resource $result)

從和指定的結果標識關聯的結果集中取得一行數據並作為數組返回。每個結果的列儲存在一個索引數組的單元中,偏移量從0開始。依次調用mysql_fetch_row()將返回結果集中的下一行,如果沒有更多行則返回false。

5. 從結果集中取得一行作為關聯數組,或數字數組,或二者兼有:mysql_fetch_array

array mysql_fetch_array(resource $result[, int $result_type])

mysql_fetch_row()的擴展版本。除了將數據以數字索引方式儲存在數組中之外,還可以將數據作為關聯索引儲存,用欄位名作為鍵名。如果結果中出現欄位名重名的現象,最後一列將優先。要訪問同名的其他列,必須用該列的數字索引或給該列起個別名。對有別名的列,用別名來訪問其內容。

6. 關閉 MySQL 連接:mysql_close

bool mysql_close([resource $link_identifier])

mysql_close()關閉指定的連接標識所關聯的到MySQL伺服器的非持久連接。如果沒有指定link_identifier,則關閉上一個打開的連接。

例PHP中使用MySQL資料庫(mysql.php)

?php//連接MySQL資料庫

mysql_connect(‘localhost’, ‘root’, ‘123’);

//選擇當前資料庫

//等效為執行USE test

mysql_select_db(‘test’);

//在當前資料庫執行SQL語句

$query = “SELECT * FROM students”;

$result = mysql_query($query);

//操作上次查詢返回的結果集,注意$result變數一般是需要的

while($student = mysql_fetch_array($result)) {

echo ‘pre’;

print_r($student);

echo ‘/pre’;

}

?

php訪問mysql的幾種方法

用ASP連接各種資料庫的方法

一、ASP的對象存取資料庫方法

在ASP中,用來存取資料庫的對象統稱ADO(Active Data Objects),主要含有三種對象:Connection、Recordset 、Command

Connection:負責打開或連接數據

Recordset:負責存取數據表

Command:負責對資料庫執行行動查詢命令

二、連接各資料庫的驅動程序

連接各資料庫可以使用驅動程序,也可以使用數據源,不過我建議大家使用驅動程序,因為使用驅動程序非常方便、簡單,而使用數據源比較麻煩。

ODBC鏈接

適合資料庫類型 鏈接方式

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鏈接

適合的資料庫類型 鏈接方式

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的資料庫比較多,在這裡我建議大家連接Access資料庫使用下面的方法:

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是你的資料庫存放的相對路徑!如果你的資料庫和ASP文件在同一目錄下,你只要這樣寫就可以了:

dim conn

set conn = server.createobject(“adodb.connection”)

conn.open = “provider=microsoft.jet.oledb.4.0;” “data source = ” server.mappath(“bbs.mdb”)

有許多初學者在遇到資料庫連接時總是會出問題,然而使用上面的驅動程序只要你的資料庫路徑選對了就不會出問題了。

php有幾種連接mysql的方法

大致有以下方法:

1、使用 mysql ,提示:此種方法官方不建議。

?php  

$con = mysql_connect(“localhost”,”root”,””);  

if (!$con)  

  {  

  die(‘Could not connect: ‘ . mysql_error());  

  }  

mysql_close($con);

2、使用 mysqli(分過程式與對象式兩種):

?php

$link = mysqli_connect(‘localhost’, ‘my_user’, ‘my_password’, ‘my_db’);

if (!$link) {

    die(‘Connect Error (‘ . mysqli_connect_errno() . ‘) ‘

            . mysqli_connect_error());

}

echo ‘Success… ‘ . mysqli_get_host_info($link) . “\n”;

mysqli_close($link);

?

3、使用PDO

?php   

   

$db = new PDO(‘mysql:host=localhost;dbname=test’, ‘root’, ”);  

try {  

    foreach ($db-query(‘select * from user’) as $row){  

        print_r($row);  

    }  

    $db = null;  //關閉資料庫  

} catch (PDOException $e) {  

    echo $e-getMessage();  

}  

?

4、其他(使用 ADODB 等)

?php  

require_once ‘./adodb5/adodb.inc.php’;  

$conn = ADONewConnection(‘mysql’);  

$conn-connect(‘localhost’,’root’,”,’test’);  

$conn-Execute(“set names utf8”);  

$res = $conn-Execute(“select * from user”);  

if (!$res){  

    echo $conn-ErrorMsg();  

}else{  

    var_dump($res);  

}  

?

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/297568.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-28 12:16
下一篇 2024-12-28 12:16

相關推薦

  • ArcGIS更改標註位置為中心的方法

    本篇文章將從多個方面詳細闡述如何在ArcGIS中更改標註位置為中心。讓我們一步步來看。 一、禁止標註智能調整 在ArcMap中設置標註智能調整可以自動將標註位置調整到最佳顯示位置。…

    編程 2025-04-29
  • Python棧操作用法介紹

    如果你是一位Python開發工程師,那麼你必須掌握Python中的棧操作。在Python中,棧是一個容器,提供後進先出(LIFO)的原則。這篇文章將通過多個方面詳細地闡述Pytho…

    編程 2025-04-29
  • 解決.net 6.0運行閃退的方法

    如果你正在使用.net 6.0開發應用程序,可能會遇到程序閃退的情況。這篇文章將從多個方面為你解決這個問題。 一、代碼問題 代碼問題是導致.net 6.0程序閃退的主要原因之一。首…

    編程 2025-04-29
  • Python創建分配內存的方法

    在python中,我們常常需要創建並分配內存來存儲數據。不同的類型和數據結構可能需要不同的方法來分配內存。本文將從多個方面介紹Python創建分配內存的方法,包括列表、元組、字典、…

    編程 2025-04-29
  • Python中init方法的作用及使用方法

    Python中的init方法是一個類的構造函數,在創建對象時被調用。在本篇文章中,我們將從多個方面詳細討論init方法的作用,使用方法以及注意點。 一、定義init方法 在Pyth…

    編程 2025-04-29
  • 使用Vue實現前端AES加密並輸出為十六進位的方法

    在前端開發中,數據傳輸的安全性問題十分重要,其中一種保護數據安全的方式是加密。本文將會介紹如何使用Vue框架實現前端AES加密並將加密結果輸出為十六進位。 一、AES加密介紹 AE…

    編程 2025-04-29
  • Python 常用資料庫有哪些?

    在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • 用不同的方法求素數

    素數是指只能被1和自身整除的正整數,如2、3、5、7、11、13等。素數在密碼學、計算機科學、數學、物理等領域都有著廣泛的應用。本文將介紹幾種常見的求素數的方法,包括暴力枚舉法、埃…

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • Python學習筆記:去除字元串最後一個字元的方法

    本文將從多個方面詳細闡述如何通過Python去除字元串最後一個字元,包括使用切片、pop()、刪除、替換等方法來實現。 一、字元串切片 在Python中,可以通過字元串切片的方式來…

    編程 2025-04-29

發表回復

登錄後才能評論