select * from openquery(DATABASENAME_LINKED, 'select id, pe_department_id, pe_username, pe_name, pe_hours, pe_startpage, pe_admin from person')
此查询中丢失了特殊字符。是否可以确保代码或其他地方的某种编码?
答案 0 :(得分:1)
从this article重新定位功能UTF8_TO_NVARCHAR
,可以即时进行转换:
SELECT
id,
pe_department_id,
dbo.UTF8_TO_NVARCHAR(cast(pe_name AS varchar(MAX))) pe_name,
pe_hours,
pe_startpage,
pe_admin
FROM OPENQUERY(
DATABASE_LINKED,
'select
id,
pe_department_id,
pe_name,
pe_hours,
pe_startpage,
pe_admin
from person'
)
使用MySQL CHARSET
指令直接在传递查询中强制转换列的更直观的方法失败,没有有用的错误描述,所以我们没有进一步追求这一点。