我一直在尋找幾天,並找不到任何有用的東西。按使用問題推動不區分大小寫的訂單
我的問題是;我無法設置標準不區分大小寫的ORDER(A a b B D d)。因爲當我試圖從DB獲取我的記錄,它不正確排序,因爲ascii問題(A B C a b c)
我想要像這樣設置我的ORDER標準;
Criterias::setCriterias(Array('ORDER' => 'UPPER(name)'));
但推動不讓我在設置標準時使用UPPER。
所以我必須這樣設置;
Criterias::setCriterias(Array('ORDER' => 'name'));
我發現了一些可能有所幫助的功能,這個功能正在做我想做的事情;
setIgnoreCase(true)
這個函數會出現一個新問題。如果我在沒有WHERE的情況下設置ORDER標準,它將像魅力一樣工作。但是如果我把'WHERE'和'ORDER'放在一起,推動會給我錯誤。
Fatal error: Uncaught exception 'PropelException' with message 'Unable to execute SELECT statement [] [wrapped: Cannot fetch TableMap for undefined table: ]' in /usr/local/share/pear/propel/query/ModelCriteria.php:1153 Stack trace: #0 /usr/local/share/pear/propel/query/ModelCriteria.php(1019): ModelCriteria->getSelectStatement(NULL)
謝謝。
能否請您發佈到目前爲止已完整的Propel查詢代碼,並告訴您正在使用哪種Propel版本? – 2011-03-17 20:15:14
確定快速搜索後,我發現你已經打開了一個bug:http://www.propelorm.org/ticket/1314感謝Propel團隊:-) – 2011-03-17 20:19:11