问题标签 [character-set]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
48 浏览

tsql - 忽略特殊 unicode 字符的字符串比较

我有一张桌子,上面有各种语言的城市名称。这些名称通常包含诸如等字符éü我正在构建一个搜索功能,以便用户可以搜索名称,但我希望这忽略所有特殊字符,并将它们视为英文 26 字母字母表中的字母.

例如,对 name 的查询munchen应该与 value 匹配München。该查询将比较的两边转换为不区分大小写的 26 个字母,然后执行比较。

有没有一种简单的方法来实现这一目标?

0 投票
2 回答
790 浏览

oracle - oracle客户端无法显示泰文

我已经NLS_LANG=THAI_THAILAND.TH8TISASCIIregedit>Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ORACLE\KEY_OraClient10g_home1.

而数据库服务器CHARACTERSET也是TH8TISASCII(NLS_CHARACTERSET=TH8TISASCII)

但是SQL PLUS还是不能显示泰语

0 投票
2 回答
915 浏览

sql - HANA:数据类型 BLOB 的数据库列中的未知字符

我需要有关如何将未知类型的字符从数据库字段解析为可读格式的帮助,因为我需要在数据库级别用另一个有效值(以应用程序存储它的确切格式)覆盖这个值,以自动化系统复制活动.

我有一个专有应用程序,它还允许用户通过前端对其进行配置。此配置数据存储在表中,配置属性的值存储在“BLOB”类型的列中。对于此处所需的值,我在应用程序前端提供了一个有效的 URL(如http://myserver:8080)。但是,存储在数据库中的内容是不可读的(一些方形字符)。我尝试了各种HANA(HEX,二进制)的转换函数,简单,并且以级联方式(例如首先到二进制,然后到varchar)以使其可读。另外,我尝试了另一种方法,使我要插入的值以正确的格式显示(通过十六进制或二进制转换为 BLOL),但这也不起作用。我将值复制到剪贴板并将其与各种字符集表进行比较(尽管我不确定这是否可以工作)。

我的转换尝试看起来有点像这样:

SELECT TO_ALPHANUM('') FROM DUMMY;

而括号将包含有问题的字符。我什至不能在这里打印它们。

如何解决这个问题并找出该应用程序使用的字符集?如果有更多的想法,我将不胜感激。

0 投票
2 回答
950 浏览

sql - BLOB 到 XMLType XML 解析在 oracle 中失败

我无法在 oracle 数据库中将 BLOB 转换为 XMLType。我试过这个:

我收到此错误消息:

我的问题是,如何将此 BLOB (ISO-8859-2) 转换为 XMLType?ISO-8859-2 的字符 ID 是什么?

谢谢。

0 投票
0 回答
208 浏览

mysql - SQL - 在 FIND_IN_SET 函数中使用变量时“非法混合排序规则”

问题

我使用带有变量 @myVar 的本机函数 FIND_IN_SET 作为字符串列表,例如:

如果我从直接值设置 @myVar

=> 效果很好

如果我从一个函数中设置@myVar,该函数从表的一列返回连接值

=> 我得到Erreur SQL (1267) : Illegal mix of collat​​ions (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'find_in_set'

那么,我要摆脱这个错误吗?

请务必注意,我不想更改表格的排序规则。我希望我可以更改变量的排序规则,使其与我的列的排序规则相匹配,但我不能在初始化期间使用关键字“COLLATE”强制它:

=> 我得到Erreur SQL (1253) : COLLATION 'utf8_unicode_ci' is not valid for CHARACTER SET 'utf8mb4'


有用信息

我所有的表及其列都有排序规则 utf8_unicode_ci

character_set_client = utf8mb4

character_set_connection = utf8mb4

character_set_database = utf8

character_set_filesystem = 二进制

character_set_results = utf8mb4

character_set_server = latin1

character_set_system = utf8

collat​​ion_connection = utf8mb4_general_ci

collat​​ion_database = utf8_general_ci

collat​​ion_server = latin1_swedish_ci

character_set_client = utf8mb4

collat​​ion_connection = utf8m4_general_ci

数据库排序规则 = utf8_general_ci


SQL 代码(匿名和简化版)

0 投票
0 回答
852 浏览

java - Linux 上的 JVM 中如何初始化默认字符集

当我在“Linux CentOS 7”上运行 Java 应用程序时

Charset.defaultCharset() 正在返回“US-ASCII”。

如果我通过 JVM 参数 -Dfile.encoding="UTF-8" 我可以将字符集更改为 UTF-8。

但我的问题是,如果在启动时在 JVM 上没有设置参数,默认字符集是如何初始化的。

它必须来自操作系统区域设置或类似设置。如何确定由 JVM 读取的操作系统设置?

0 投票
2 回答
456 浏览

mysql - 无效的 utf8 字符串。将“latin1_german1_ci”列完全转换为 UTF8

我有一个表,其中有一列的数据似乎不是 UTF8。我想将该列转换为 UTF8。

我发现了这个精彩的教程:https ://coderwall.com/p/gjyuwg/mysql-convert-encoding-to-utf8-without-garbled-data

但是,这些解决方案都没有真正起作用。

当我做

我收到很多这样的错误:

使用不同的“字符串”(FC6265 只是一个例子)。

有什么办法可以挽救这些数据吗?

我们所说的列自然是使用排序规则格式化的latin1_german1_ci

0 投票
0 回答
186 浏览

c++ - 在语言环境土耳其语 (1254) 计算机中使用希腊语代码页 (1253)

在我的服务器应用程序中,我试图用希腊语中的 UTF-8 解析我的响应,但由于我的本地字符集是 1254,因此我无法访问每个希腊字符。

我尝试将我的线程本地设置为 1253,但它不起作用。我想知道是否有一种方法可以在我的 1254 字符集机器中将 UTF-8 字符串转换为 windows.1253(Greek),仅用于某些客户端响应。

顺便说一句,当我将区域设置更改为希腊语时,我没有任何问题,但我无法遵循此解决方案,因为我的本地设置应保留为 windows。

根据评论更新:

这是我在 UTF-8 中得到的响应

这就是我的应用程序获取它的方式

此字符串在其 Unicode wstring 之后通过的代码

最后这是我将其更改为 SystemWindowsAnsi 后的版本,即 1253(希腊语区域设置)但我的默认本地是 1254(土耳其语)

当然,这只是真正大响应的一小部分。

实际上,我想要的是将 UTF-8 字符串转换为 windows 1253(希腊语),并在对其进行处理后再次转换 UTF-8 字符串,我当前的默认本地是 1254(土耳其语)。

如果您需要更多信息,我很乐意分享更多信息。

0 投票
1 回答
116 浏览

mysql - 使用正确的字符集/排序规则转储和加载 MySQL

我有一个 Bamboo 构建脚本,它向 MySQL Admin 发送并执行以下操作:

该代码基本上删除了数据库,重新创建它并从默认数据库(db2)加载

问题是 db2 是以下字符集/排序规则

字符集:latin1,排序规则:latin1_bin

而复制的数据库是;

字符集:utf8mb4,排序规则:utf8mb4_0900_...

当我们的 MySQL 批量加载器运行并遇到数据中的某些字符时,这会产生问题,例如:

我在这个网站和谷歌上花了一些时间,但我尝试过的都没有奏效。

有人可以指出我正确的方向吗?

0 投票
1 回答
73 浏览

compiler-construction - 在 GraalVM 中使用新字符集创建新的编程语言

这个问题只是出于好奇。Graal & Truffle 是否支持使用新字符集制作编程语言?也就是说,如果我想在既不是 Unicode 也不是 ASCII 的字符集中实现一种新的编程语言,比如 EBCDIC、TRON 或全新的东西,可以在 Graal 和 Truffle 中完成吗?文档中的任何地方都没有提到这种可能性。