0
我有一個在我的開發機器上工作得很好的教義程序,但是當我將它移動到我的服務器時,它停止工作。這兩臺機器之間的主要區別在於一個是windows並運行mySql 5.5,另一個是運行MySQL 5.1的Linux。主義移民問題。 Windows-> linux,MySQL 5.5-> MySQL 5.1
由於日誌語句後綴從未出現,我已經指出失敗行$ this-> entityManager-> createNativeQuery($ dql,$ rsm)。
get_log()->logDebug("query: ".$dql);
$rsm = new ResultSetMappingBuilder($this->entityManager);
get_log()->logDebug("ResultSetMappingBuilder");
var_dump($rsm);
$rsm->addRootEntityFromClassMetadata('D_Post', 'f');
get_log()->logDebug("addRootEntityFromClassMetadata");
$query = $this->entityManager->createNativeQuery($dql, $rsm);
get_log()->logDebug("createNativeQuery");
的SQL運行是
SELECT * FROM (SELECT DISTINCT f.ID,f.post_title, f.post_date, f.post_type,
f.views_count
as score FROM wp_vsideviewpostfilter f ) t ORDER BY t.score DESC,t.post_title
DESC LIMIT 0,10
我可以通過查詢亞軍執行Linux機器上的SQL代碼,並正確執行。
有關爲什麼此程序在其他服務器上失敗的任何想法?
檢查跟蹤的PHP和MySQL錯誤日誌。 – Alfabravo 2012-02-13 14:58:11
由於您正在Windows中開發並在Linux中進行測試,可能問題是區分大小寫的相關?發生了幾次:D – aletzo 2012-02-13 15:18:12
我不知道爲什麼我忘了檢查實際的服務器日誌。我之前確實遇到了區分大小寫問題,但已經解決了這個問題。但是,這是問題是混合\和/在一個目錄路徑。出於某種原因,Windows允許這樣做。謝謝 – i8abug 2012-02-13 15:24:22