2011-08-04 31 views
0

我運行此查詢MySQL查詢速度放緩頁面加載

 $result1 = mysql_query("SELECT * FROM 'departments'"); 
     while($row1 = mysql_fetch_assoc($result1)) 
     { 
      $depts = array("Name" => $row1['Name'], "Value" => $row1['Value'], "ID" => $row['CollegeID']); 
     } 

與其他三個簡單的查詢,一個將數據加載到配置文件文本框和其他負載下拉。我的查詢或我的PHP代碼可能會導致此問題,這是錯誤的。它只返回約51條記錄。你認爲它可能是MySQL服務器在2008 Windows服務器上運行的服務器。

+0

您是否試過'SELECT * FROM departments'沒有引號 –

回答

2

也許你在部門表中有許多列。試試這個:

$result1 = mysql_query("SELECT Name, Value, CollegeID FROM 'departments'"); 
    while($row1 = mysql_fetch_assoc($result1)) 
    { 
     $depts = array("Name" => $row1['Name'], "Value" => $row1['Value'], "ID" => $row['CollegeID']); 
    } 
0

切勿使用*

$result1 = mysql_query("SELECT Name, Value, CollegeID FROM 'departments'"); 
while($row1 = mysql_fetch_assoc($result1)) 
{ 
    $depts = array("Name" => $row1['Name'], "Value" => $row1['Value'], "ID" => $row['CollegeID']); 
} 

和使用極限

$result1 = mysql_query("SELECT Name, Value, CollegeID FROM 'departments' LIMIT 1"); 
while($row1 = mysql_fetch_assoc($result1)) 
{ 
    $depts = array("Name" => $row1['Name'], "Value" => $row1['Value'], "ID" => $row['CollegeID']); 
} 

它不會在你的情況很重要,因爲你總是用新的覆蓋您的實際$depts變量一行

1

你也可以嘗試使用OOP mysqli fu而不是舊的mysql版本。

$mysqli = new mysqli("localhost", "my_user", "my_password", "world"); 
$mysqli->query("SELECT Name, Value, CollegeID FROM departments"); 
+0

我同意使用LIMIT不使用*來選擇數據 – Christo