以mysql_query()函數作為教程的基礎前提,我們先來看一下mysql_query()的用法:
mysql_query()函數
PHP MySQL 函數庫中,mysql_query() 函數用于向 MySQL 發送并執行 SQL 語句。
對于沒有數據返回結果集的 SQL ,如 UPDATE、DELETE 等在執行成功時返回 TRUE,出錯時返回 FALSE;對于 SELECT,SHOW,EXPLAIN 或 DESCRIBE 語句返回一個資源標識符,如果查詢執行不正確則返回 FALSE。
語法:
| resource mysql_query( string query [, resource connection] ) |
參數說明:

提示
如果沒有打開的連接,本函數會嘗試無參數調用 mysql_connect() 函數來建立一個連接
對于返回數據集的查詢,就算返回結果為0(即沒有符合查詢條件的記錄),返回的仍然是資源標示符而不是 FALSE
例子1:
| <php$conn = @mysql_connect("localhost","root","root123");if (!$conn){ die("連接數據庫失敗:" . mysql_error());}mysql_select_db("test", $conn);$result = mysql_query("SELECT * WHERE 1=1") or die("無效查詢: " . mysql_error());?> 該例子查詢語句在 SQL 語法上有錯誤,因此 mysql_query() 執行失敗并返回 FALSE 。例子2:<php$conn = @mysql_connect("localhost","root","root123");if (!$conn){ die("連接數據庫失敗:" . mysql_error());}mysql_select_db("test", $conn);mysql_query("set names 'gbk'"); //為避免中文亂碼做入庫編碼轉換$password = md5("123456"); //原始密碼 12345 經過加密后得到加密后密碼$regdate = time(); //得到時間戳$sql = "INSERT INTO user(username, password, email, regdate)VALUES('小王', '$password', '12345@163.com', $regdate)";if(!mysql_query($sql,$conn)){ echo "添加數據失敗:".mysql_error();} else { echo "添加數據成功!";}?> |
該例子向 user 表寫入數據,成功返回 TRUE ,否則返回 FALSE(用 ! 符號判斷)。
Create Database 創建數據庫
創建數據庫
CREATE DATABASE 語法用于創建一個數據庫。
語法:
| CREATE DATABASE db_name |
PHP MySQL 函數庫中,mysql_query() 函數用于向 MySQL 發送并執行 SQL 語句。
創建一個名為 testdb 的數據庫:
| <?php$conn = @mysql_connect("localhost","root","root1234");if (!$conn){ die("連接數據庫失敗:" . mysql_error());}if (@mysql_query("CREATE DATABASE testdb",$conn)){ echo "創建數據庫成功!";} else { echo "創建數據庫失敗:" . mysql_error();}?> |
提示
創建數據庫需要有對應的用戶權限,如root用戶
在實際的虛擬主機空間中,虛擬主機商通常已經創建好了對應的數據庫,故上述例子不一定運行成功
新聞熱點
疑難解答