簡體   English   中英

MySQL - 搜索瑞典語字符

[英]MySQL - Searching for Swedish Characters

我已將瑞典語單詞存儲在 MysQL 數據庫中。 表的編碼是

utf8_unicode_ci

我也試過

utf8_swedish_ci

當我在數據庫中進行搜索時,'a' 和 'ä' 被視為相同。 所以結果包括以 a 和 ä 開頭的兩個單詞。 反之亦然。 我的應用程序是用 CakePHP 開發的,我的核心中有以下內容。php

Configure::write('App.encoding', 'UTF-8');

我在這里錯過了什么嗎?

這是我的查詢:

$term = $this->request->query['term'];

$this->loadModel('Words');
$condition = array('word LIKE' => trim($term) . '%', 'is_active' => true);
$words = $this->Words->find('list', array(
    'fields' => array('word'),
    'limit' => 7,
    'conditions' => $condition));

return $this->respond($words, true);

我用於 Jquery 自動完成:

$(function () {
        $("#tags").autocomplete({
            source: 'autocomplete'
        });
    });
$query_result = $this->Words->query("SELECT word FROM tbl_words WHERE word LIKE '" . $term . "%' COLLATE utf8_bin LIMIT 7 ;");

這對我來說很棒。 感謝@Mihai的評論。

我有類似的問題。 我想通過可能包含瑞典字符的標簽列出所有自動完成建議。 我已經在 mysql 數據庫中有一個正確的字符集。 所以那里沒有問題。 但是我仍然無法從帶有瑞典標簽名稱的 mysql 數據庫中正確搜索。 然而,事實證明它與 mysql 無關。 我錯過了在我的 php 后端解碼標簽。

$term = urldecode($this->request->query['term']);

這是有道理的,因為 jquery 自動匹配會發出 url 中的標簽。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM