MySQL/NodeJS 选择 where/like 个日语字符

MySQL/NodeJS selecting where/like Japanese characters

我有以下查询 select 日语词典中的词汇列表。

SELECT * FROM dictionary WHERE from_local = 1 AND (word like '%後%' or reading like '%後%')

运行 HeidiSQL 中的这个程序,运行正常。我觉得这可能是一个字符集问题,但如果是这种情况,我认为它根本不会起作用。 (见截图)

当我尝试在我的 Node.js 应用程序中 运行 此查询时,我的问题出现了。结果return为空。

我正在使用 npm's mysql library. The dbQuery method is a helper function I made (Pastebin link)

import { dbQuery } from '../db'

const search = async(query) => {
    try {
        let sql = 'SELECT * FROM dictionary WHERE'
        sql += ' from_local = ? AND'
        sql += ' (word = ? OR reading = ?)'
        const params = [1, '%'+query+'%', '%'+query+'%']

        console.log('dictionary DB', {query, sql, params})

        return await dbQuery(sql, params)
    }
    catch(err) {
        console.log('search Error', err)
    }
}

Soultion我是傻子

我忘记在查询中将 = 更改为 LIKE