2010-01-21 107 views
0

我在設置系統時遇到問題。mssql_query不返回任何信息

我們有一個SQL Server 2005運行,我想從另一個運行php 5.2和apache的windows機器連接它。

我可以使用mssql_connect連接到SQL,但我無法從簡單查詢(SELECT * FROM USERS)中檢索任何結果mssql_query不返回任何內容,也不會顯示錯誤。

相同的代碼與相同的PHP正在另一臺機器(SQL Server計算機的客戶端)和在運行SQL Server的PC上工作。

可能會發生什麼?

回答

0

如果查詢只是掛起,那麼可能表被鎖定。

請問您可以運行一個不涉及任何表的查詢(如僅僅是SELECT 1)並查看它是否有效?

1

由於執行查詢的時間較長,可能會超時?你可以嘗試一個更簡單的查詢,如SELECT 1

如果是超時問題,你可能不得不考慮爲什麼會發生在這臺計算機上......或者你可能可以通過在代碼中使用這一行來修復它查詢將執行:ini_set('mssql.timeout', seconds)其中seconds是一個數字。

1

我從來沒有與MSSQL工作之前,但嘗試調用mssql_query()var_dump(mssql_get_last_message())後設置error_reporting(E_ALL)在你的文件的頂部和

0

我會從配置開始。如果它在另一臺機器上正常工作,並且這是唯一有問題的機器,那麼
1.比較工作/非工作機器之間的驅動程序。
2.比較php安裝。

你得到的圖片。

而且,我不知道你所說的「(SQL Server機器的客戶端)」的意思...

0

謝謝大家,我解決了這個問題。 我的php代碼有一個大小寫錯誤,我沒有處理結果集的任何行。

花了我幾小時才注意到這個愚蠢的事情!