mysql_query()函數
PHP MySQL 函式庫中,mysql_query() 函式用於向 MySQL 傳送並執行 SQL 語句。
對於沒有資料傳回結果集的SQL ,如UPDATE、DELETE 等執行成功時傳回TRUE,出錯時傳回FALSE;對於SELECT,SHOW,EXPLAIN 或DESCRIBE 語句傳回一個資源標識符,如果查詢執行不正確則傳回FALSE。
mysql_query()語法:
resource mysql_query( string query [, resource connection] )
#mysql_query()參數說明:
參數 | 說明 |
---|---|
query | 要傳送查詢的SQL 語句 |
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(以 ! 符號判斷)。
以上是使用mysql_query()函數執行SQL語句的詳細內容。更多資訊請關注PHP中文網其他相關文章!