store arabic in SQL database(在 SQL 数据库中存储阿拉伯语)
问题描述
我试图在 SQL 2008 数据库中存储阿拉伯字符串,但它转换为问号",为什么?我该怎么办?
您需要为 varchar/char 列选择阿拉伯语排序规则或使用 Unicode (nchar/nvarchar)
创建表#test(col1 VARCHAR(100) COLLATE Latin1_General_100_CI_AI,col2 VARCHAR(100) 整理阿拉伯语_CI_AI_KS_WS,col3 NVARCHAR(100))INSERT INTO #test VALUES(N'لا أتكلم العربية',N'لا أتكلم العربية',N'لا أتكلم العربية')<块引用>
注意上面插入语句中的 N 之前的值.如果不提及,系统会将这些值视为 Varchar,而不是 NVarchar.
SELECT * FROM #test退货
col1 col2 col3------------------------------ ------------------------------- ------------------------------??????????????لا أتكلم العربية لا أتكلم العربية要查看阿拉伯语排序列表,请使用
SELECT 名称、描述FROM fn_helpcollations()WHERE name LIKE 'Arabic%'I tried to store Arabic string in SQL 2008 database but it converted to " question mark " why ? and what should I do ?
You need to choose an Arabic collation for your varchar/char columns or use Unicode (nchar/nvarchar)
CREATE TABLE #test
(
col1 VARCHAR(100) COLLATE Latin1_General_100_CI_AI,
col2 VARCHAR(100) COLLATE Arabic_CI_AI_KS_WS,
col3 NVARCHAR(100)
)
INSERT INTO #test VALUES(N'لا أتكلم العربية',N'لا أتكلم العربية',N'لا أتكلم العربية')
Note the N before values in insert statement above. If you do not mention it, system will treat the values as Varchar, not NVarchar.
SELECT * FROM #test
Returns
col1 col2 col3
------------------------------ ------------------------------ ------------------------------
?? ????? ??????? لا أتكلم العربية لا أتكلم العربية
To see a list of Arabic collations use
SELECT name, description
FROM fn_helpcollations()
WHERE name LIKE 'Arabic%'
这篇关于在 SQL 数据库中存储阿拉伯语的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 SQL 数据库中存储阿拉伯语
基础教程推荐
- CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
- while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
- 带更新的 sqlite CTE 2022-01-01
- 带有WHERE子句的LAG()函数 2022-01-01
- ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
- 从字符串 TSQL 中获取数字 2021-01-01
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
- MySQL 5.7参照时间戳生成日期列 2022-01-01
- MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01
- 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
