[英]Zend Properl filterBy with collate
我是propel的新手,我有一個問題。 我怎樣才能放入filterBy排序規則? 我需要這樣的東西:
SELECT id, name, email FROM users WHERE email COLLATE utf8_bin = "teSt@domain.com"
我需要區分大小寫的搜索,但目前無法更改表架構。 我正在努力:
$model = Model_Propel_Users::create()->filterByName('COLLATE utf8_bin ' . $name)
但這是行不通的。 有人有主意嗎?
謝謝!
我找到了解決方案,也許對某人有用。
首先,我在模型中添加了新方法:
public function findUser($email)
{
$criteria = new Criteria();
$conn = Propel::getConnection();
$cq = Model_Propel_Users::EMAIL . ' COLLATE utf8_bin LIKE ' . $conn->quote($email);
$criteria->add(null, $cq, Criteria::CUSTOM);
$user = Model_Propel_Users::doSelectOne($criteria);
return $user;
}
然后只需撥打電話即可獲得結果:
$user = Model_Propel_Users::create()->findUser($email);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.