gpt4 book ai didi

sql-server - 使用 LiveCode 通过 ODBC 从 SQL Server 检索 unicode 数据

转载 作者:行者123 更新时间:2023-12-02 03:48:16 24 4
gpt4 key购买 nike

我在使用 LiveCode 时遇到了这个问题,但我不知道问题出在哪里还是与 ODBC 驱动程序有关。

内置 LiveCode 的应用程序定期通过 ODBC 连接到 SQL Server 数据库,以检索各种数据。

负责数据库的应用程序正在升级,作为升级的一部分,所有文本字段都将转换为 Unicode 文本字段。从本质上讲,这意味着以前定义为 varchar 的字段现在定义为 nvarchar,而以前定义为 text 的字段现在定义为 ntext。 (顺便说一句,这是 SQL Server 2008。)

使用我们过去一直使用的查询,我们现在得到单个字符(字段中的第一个字符)而不是整个文本。我现在可以通过在选择查询中指定到 varchar 的转换来解决这个问题,例如,应用程序过去常常发出这样的请求 从 tab1 中选择 id、名称它现在发出这样的请求 SELECT id, convert(varchar(255), name) AS name FROM tab1

复制代码

这行得通 - 我找回了我以前得到的东西 - 但是 (a) 它很笨拙,并且 (b) 现在这很好,当客户只是将他们现有的所有数据迁移到数据库中时,但迟早他们实际上可能会利用这次升级在字段中输入一些 Unicode 字符,然后我大概不会把它们弄出来。

不幸的是,我无法访问数据库或应用程序以插入测试数据 - 但我假设这个问题会出现 - 而且很可能它不会很明显,即会有一个微妙的我的应用程序没有处理输入的数据(但认为是)的问题。

那么:有没有一种方法可以让 LiveCode 应用程序使用当前的 ODBC 驱动程序从 nvarchar 或 ntext 字段中正确检索完整数据?

最佳答案

您是否有可能使用 revDataFromQuery 而不是更强大的 revQueryDatabase?我不使用 revDataFromQuery 但我猜它使用的是不支持 UTF16 的 c 字符串函数。

关于sql-server - 使用 LiveCode 通过 ODBC 从 SQL Server 检索 unicode 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15500142/

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