2012-08-12 54 views

回答

57

這是手冊頁mysql_query第一個例子:

$result = mysql_query('SELECT * WHERE 1=1'); 
if (!$result) { 
    die('Invalid query: ' . mysql_error()); 
} 

如果你想使用除die以外的東西,那麼我建議trigger_error

+3

或者乾脆'如果(!的mysql_query( 'SELECT * WHERE 1 = 1')){...}' – 2012-08-12 00:32:20

+2

@Rune:對,但是你將無法使用查詢資源的進一步行動(即用於使用'mysql_fetch_ *'函數獲取實際數據)。 – 2014-05-21 13:36:54

+1

@AmalMurali嗯,好點。在發佈該評論時,我不確定自己在頭腦中的位置。 – 2014-05-22 19:44:50

4

如果您的查詢失敗,您將收到一個FALSE返回值。否則,您將收到資源/ TRUE。

$result = mysql_query($query); 

if(!$result){ 
    /* check for error, die, etc */ 
} 

基本上只要它不是假的,你沒事。之後,你可以繼續你的代碼。

if(!$result) 

這部分代碼實際上運行您的查詢。

13

您也可以使用mysql_errno()

$result = mysql_query($query); 

if(mysql_errno()){ 
    echo "MySQL error ".mysql_errno().": " 
     .mysql_error()."\n<br>When executing <br>\n$query\n<br>"; 
} 
+1

使用mysql_errno()更可靠,因爲你不能完全依賴從mysql_query()返回的結果類型。 – dar7yl 2012-08-12 01:05:27

2

mysql_query函數被用於在PHP執行MySQL查詢。 mysql_query的回報,如果查詢執行假fails.Alternatively你可以,如果查詢執行失敗,那麼它將終止執行,並顯示MySQL的嘗試使用mysql_error()功能 對於如

$result=mysql_query($sql) 

die(mysql_error()); 

在上面的代碼片斷SQL查詢執行時出錯。

0

如果使用MySQLi bind_param嘗試把此行上述查詢

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); 
1

只放:

or die(mysqli_error());

查詢

後,它會retern的誤差echo

例如

// "Your Query" means you can put "Select/Update/Delete/Set" queries here 
$qfetch = mysqli_fetch_assoc(mysqli_query("your query")) or die(mysqli_error()); 



    if (mysqli_errno()) { 
     echo 'error' . mysqli_error(); 
     die(); 
    }