PHP操作MySQL資料庫詳解(一)

黄舟
發布: 2023-03-06 21:46:01
原創
2247 人瀏覽過


1. PHP連接MySQL伺服器

mysql_connect()

#基本語法

  • #說明:PHP連線MySQL伺服器

  • 語法:resource $link = mysql_connect($hostname, $username, $password)

  • 參數:

    • $hostname:是MySQL伺服器的網域或IP位址,也可以加上連接埠號碼(3306)。如:localhost:3306

    • $username:是MySQL伺服器的使用者名稱。如:root

    • $password:是MySQL伺服器的使用者密碼。

  • 傳回值:如果執行成功,則回傳一個資源標識符。如果執行失敗,回傳FALSE

具體操作

登入後複製

  如果MySQL伺服器連線失敗,而且mysql_connect()前未加@符,則會報系統錯誤,可以看到下面的報錯訊息,包含使用者的許多信息,安全性不好。利用@#就可以屏蔽該系統錯誤,提高安全性。

Warning: mysql_connect() [function.mysql-connect]: 
Unknown MySQL server host 'local1host' (0) in /Applications/MAMP/htdocs/php_test/php_mysql.php on line 17
登入後複製

其他函數及符號

exit()

  • 描述:輸出一個提示訊息,並中止腳本繼續向下運行。

  • 語法:void exit([$msg])

  • #參數:$msg是可選項。如果省略,只中止腳本運行。

  • 範例:exit(“PHP連線出錯了”)

mysql_error()

  • #描述:傳回上一次MySQL執行失敗時的文字錯誤訊息。

  • 語法:mysql_error()

屏蔽系統錯誤@

  • 描述:@可以屏蔽各種函數呼叫錯誤,或包含檔案錯誤,但不能用在函數定義或類別定義之前。

2. 選擇MySQL資料庫

mysql_select_db()

語法

  • #描述:選擇目前要操作的資料庫

  • #語法:bool mysql_select_db ( string $database_name [, resource $link ] )

  • 參數:

    • #$database_name:指定要選擇的資料庫名稱。

    • $link:可選項。指定當前的活動連線。如果省略,就以上一次開啟的活動連線。

  • 傳回值:如果選擇資料庫成功,則傳回TRUE。如果選擇資料庫失敗,則傳回FALSE

操作

登入後複製

3. 設定MySQL傳回的資料字元集

  向MySQL伺服器發送請求或傳回請求結果的資料字元集

//3.设置MySQL返回的数据字符集
mysql_query(“set names utf8”);
登入後複製

4.執行MySQL語句

mysql_query()

語法

  • 說明:傳送一則MySQL 查詢

  • 語法:resource mysql_query ( string $query [, resource $link] )

  • 參數:

    • #增加記錄:$query = “INSERT INTO news(title,content) VALUES('標題' , '內容')”

    • ##刪除記錄: $query = “DELETE FROM news WHERE id=10”

    • #修改記錄:$query = “UPDATE news SET title = '新標題' , content = '新內容' WHERE id= 80”

    • 查詢記錄:$query = “SELECT * FROM news WHERE id<100”

    • $query:指要发送的SQL语句。

    • $link:可选项。指上一次打开的活动连接。

  • 返回值:

    • 结果集也是一个资源标识符,是到MySQL数据的一个引用地址

    • 如果执行SELECT、SHOW、DESCRIBE命令,成功时返回结果集,失败时返回FALSE。

    • 如果执行其它的SQL语句,执行成功返回TRUE,执行失败返回FALSE。

  • 举例:

    • $result = mysql_query(“SELECT * FROM news WHERE id<100”)

    • $result = mysql_query(“DELETE * FROM news WHERE id=100”)

操作

//4.执行SQL查询:向MySQL服务器发出查询的请求$
sql = 'SELECT * FROM 007_news WHERE id<100';
$result = mysql_query($sql, $link);
登入後複製

5. 从结果集中取出一行数据

1. mysql_fetch_row()

语法

  • 描述:从结果集中取得一行作为枚举数组。

  • 语法:array mysql_fetch_row ( resource $result )

  • 参数:$result是结果集变量。

  • 返回值:返回一个枚举数组,也就是从0开始的正整数下标。这里的下标,是与表的字段下标是对应的。

  • 举例:$arr = mysql_fetch_row($result)

操作

//5.取出一条记录作为枚举数组返回
$arr = mysql_fetch_row($result);echo "
";
print_r($arr);echo "
";
登入後複製

执行结果

Array(
    [0] => 17
    [1] => 1
    [2] => cctv中学生信息化教学实验基地共建工程在京启动
    [3] => admin
    [4] => 中小学课外辅导网
    [5] => 
    [6] => 
    [7] => 50
    [8] => 
    [9] => 52
    [10] => 1339340691)
登入後複製

2. mysql_fetch_array()

  • 描述:从结果集中取出一行,作为混合数组返回。

  • 语法:array mysql_fetch_array ( resource $result [, int $result_type ] )

  • 参数:

    • MYSQL_BOTH:默认的。也就是两种下标都存在。

    • MYSQL_ASSOC:只有字符下标的数组。相当于mysql_fetch_assoc()的功能。

    • MYSQL_NUM:只有整数下标的数组。相当于mysql_fetch_row()的功能。

    • 以上三个参数是常量,系统常量必须全大写。

    • $result:是指结果集变量。

    • $result_type:是指返回的数组的类型。取值:MYSQL_BOTH、MYSQL_ASSOC、MYSQL_NUM

  • 返回值:返回一个数组,至于是什么数组,取决于第二个参数。

  • 举例:

    • $arr = mysql_fetch_array($result) //混合数组

    • $arr = mysql_fetch_array($result , MYSQL_ASSOC ) //关联数组

    • $arr = mysql_fetch_array($result , MYSQL_NUM) //枚举数组

3. mysql_fetch_assoc()

  • 描述:从结果集中取一行,以关联数组返回。

  • 语法:array mysql_fetch_assoc(resource $result)

  • 举例:$arr = mysql_fetch_assoc($result)

附:完整PHP代码

";
print_r($arr);
echo "
"; ?>
登入後複製

以上是PHP操作MySQL資料庫詳解(一)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!