gpt4 book ai didi

mysql - MS SQL - MySQL - Openquery 中文字符导入为 '?'

转载 作者:行者123 更新时间:2023-11-28 23:21:23 25 4
gpt4 key购买 nike

我正在将数据从 MySQL 数据库导入 Microsoft SQL Server 数据库 (SQL_Latin1_General_CP1_CI_AS)。我将基于 OBDC 的链接服务器连接与 Openquery 语句结合使用。

我使用以下 MS SQL 语句:

 SELECT street_address FROM openquery(MYLINKEDSERVER,'SELECT street_address FROM customers')

部分地址包含中文字符,使用openquery时将这些输入为问号,示例结果:

??? ??? 74 ?????501?

我尝试使用 latin1 进行转换 - 没有成功;

 SELECT * FROM openquery(MYLINKEDSERVER,'SELECT convert(street_address using latin1) FROM customers')

关于如何将汉字导入 MS SQL 有什么想法吗?

最佳答案

有两种 ODBC 驱动程序,一种是 ANSI (myodbc5a.dll) 一种是 Unicode (myodbc5w.dll)。 ANSI 驱动程序将始终返回 varchar 数据。您需要使用 Unicode 驱动程序才能将汉字作为 Unicode 返回。

检查 relevant paragraph在 ODBC 驱动程序的安装页面和 this related question .

从一个代码页转换为另一个代码页时,未知或无法表示的字符将替换为 ? 或 Unicode 替换字符 �。字符串中的此类字符是尝试进行错误转换的明确标志。

关于mysql - MS SQL - MySQL - Openquery 中文字符导入为 '?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41442425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com