问题标签 [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.
sql - 我们如何将表情符号保存在 SQL 数据库中以保留它们的唯一性以进行相等比较?
当我们将表情符号保存到我们的数据库时,我们遇到了问题。
我们已将表格列更改为字符集和排序规则,以节省足够的字节来区分表情符号。
这是我们修改表列的查询:
ALTER TABLE TableName MODIFY TableColumn VARCHAR(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
当我们保存以下表情符号时,二进制值如下:
一些表情符号 (♥️) 保存二进制信息,使我们能够将它们区分为唯一/单独的表情符号。
由于我们不想两次保存相同的表情符号,因此对于我们的用例,我们正在检查数据库中的“值”。如果该值存在,我们不保存表情符号。
但是,许多表情符号值,包括 和 ,都被视为相同的值。
因此,当我们尝试保存 and 时,只有一个被保存...
为什么它们被视为相同的值?
我们如何使用 SQL 保存和识别不同的表情符号?
我们可以使用更好的字符集或排序规则吗?
我们正在通过单独的存储库访问 MySql 和 MSSql 数据库,这些存储库是在 .NET 框架项目中用 C# 编写的。
python - 初始化 unicode 字体的对象
我编写了一个类对象来访问 unicode 块中的数学字母数字符号,如https://en.wikipedia.org/wiki/Mathematical_Alphanumeric_Symbols上所述
要使用它,我会这样做:
[出去]:
该代码按预期工作,但要涵盖所有数学字母数字符号,我将不得不从script * fonts * style * case
编号枚举所有开始和结束符号。的常数。
我的问题是:
- 有没有更好的方法来创建所需的
MathAlphanumeric
对象? - 有没有办法避免初始化
script * fonts * style * case
no. 常数,为了MathAlphanumeric.charset()
按预期工作? - 某些 unicode.org 相关库中是否提供了类似的对象或函数?
postgresql - 需要一些关于 LC_COLLATE 和 LC_CTYPE 的说明
我已经阅读了官方的 postgres 文档以了解 LC_COLLATE 和 LC_TYPE。但是,我仍然没有正确理解它。
任何人都可以帮助我理解这些概念和这些概念的影响,特别是当我们尝试加载编码 WE8ISO8859P15 的 oracle 和 postgres 编码为 utf-8 且 collation/ctype 为 en_US.UTF-8 的数据时。
提前致谢
java - 我们应该在java中使用什么编码来读取US7ASCII编码的文件
我正在尝试使用以下代码使用 java 解析 US7ASCII 文件:
在第 2 行,第二个参数是我需要传递字符集名称的字符集名称。
Java 支持的字符集在以下链接中提供: https ://docs.oracle.com/javase/8/docs/technotes/guides/intl/encoding.doc.html
在那里我找不到任何 US7ASCII 条目。有人可以帮我确定我应该为 US7ASCII 编码文件传递什么字符集名称。
character-encoding - 使用Datastage,Sql server的法语字符编码问题
我正在使用数据阶段从 Microsoft SQL 服务器中提取数据,其中有一列包含 XML 数据,在该 XML 中有一列包含法语字符,在 XMl 中编码法语字符存在问题.
我正在使用 datastage、Microsoft Sql server 并提取数据并尝试将数据存储在 oracle 或 sql server 中。
我们有什么办法可以解决这个问题吗?我尝试在变压器阶段应用,不同阶段。
mysql - 为什么“character_set_connection”会影响插入结果?
我将列字符集更改为 utf8mb4 以支持表情符号,但是当 character_set_connection/character_set_client 设置为 utf8 时,插入数据返回“第 1 行的列 xxx 的字符串值 xxx 不正确”。在我也将 character_set_connection/character_set_client 设置为 utf8mb4 之前,我无法成功插入数据。我认为上面的参数是用来和mysql客户端通信的,当服务器成功接收到语句时,它们已经传输到了utf8(否则这里应该会出错),在将utf8编码的数据插入到utf8mb4编码的列时,不应该有有任何错误。那么,这里为什么会出现错误呢?
mysql - MySQL CHAR_LENGTH(str) 在与不同的字符集引入器一起使用时,有时会为相同的字符串文字产生不同的输出
这很奇怪。根据 MySQL 开发者网站 -
返回字符串 str 的长度,以字符为单位。多字节字符计为单个字符。这意味着对于包含五个 2 字节字符的字符串,LENGTH() 返回 10,而 CHAR_LENGTH() 返回 5。
这显然意味着 CHAR_LENGTH(str) 的输出与字符集无关。
现在如给出 -
我可以使用介绍器来设置字符串的 SET CHARACTER SET,如 -
选择“ABC”;
选择_latin1'abc';
选择 _binary'abc';
选择 _utf8mb4'abc' 整理 utf8mb4_danish_ci;
就我而言,我采用字符串文字“Hello”,使用介绍器将其设置为 CHARACTER SET,并将其用作 MySQL CHAR_LENGTH(str) 函数的参数。但奇怪的是,当使用不同的字符集时,它有时会产生不同的输出。例子 -
这里,“你好”有 5 个字符。CHARACTER SETS _utf8mb4 和 _latin1 正确显示字符数。但是 CHARACTER SET _ucs2 奇怪地将数字 0f 字符显示为 3。
这是怎么回事?
mysql - MySQL 字符集 CLI 和 Workbench 显示不同的结果
问:MySQL CLI 命令行显示的字符集和我的 MySQL 工作台显示不同的结果。这是为什么?
我遇到了 MySQL 'chcp' 错误并且在更新我的 MySQL 工作台后无法查看我的服务器状态,当前版本是 8.0.27。所以在搜索了一些谷歌之后发现它是处理其他非英语语言的 MySQL Workbench 错误,我发现了一些解决方案,这些解决方案是系统变量路径包括 System32 和 MySQL bin 文件夹,它们很好地包含在我的系统路径变量中. 其他解决方案是将我的系统语言更改为英语,或者检查在我的系统区域设置中使用 UTF-8。但是第一个解决方案对我使用计算机非常不方便,而第二个解决方案使我的控制台应用程序无法处理非英文字符。我找到的最终解决方案是更改 C:\Program Files\MySQL\MySQL Workbench 8.0\workbench\os_utils.py 内部代码
process = subprocess.Popen(command, stdin = subprocess.PIPE, encoding="utf-8", stdout = subprocess.PIPE, stderr = subprocess.STDOUT, shell=True)
从 utf-8 到其他代码页。但我担心这会发生其他内部错误,所以我还没有尝试过。
问:这个“chcp”错误有什么替代解决方案吗?除了降级工作台?