以正确的格式在变量中存储阿拉伯数字

本文关键字:变量 存储 阿拉伯数字 格式 | 更新日期: 2023-09-27 18:34:29

我在甲骨文中存储阿拉伯数字时遇到了一个奇怪的问题。经过调查,我发现 C# 正确存储阿拉伯数字 ۱ 到 ۱۰ 并将它们转换为"?"字符。我该如何解决这个问题?

法典

sb_title = "ھیلو۱۲۳";
query = "INSERT INTO MyTABLE(SB_TITLE)VALUES('"+sb_title+"');
OracleCommand myCommand = new OracleCommand(query, this.myConnection);
affectedRows = myCommand.ExecuteNonQuery();

彻底调试后,我发现该变量不会缓和数据,而是在某处插入数据。SB_TITLE是NVARCHAR类型

甲骨文连接字符串

sConnectionString = "User Id=xx;Password=xx;Data Source=XE";

甲骨文版本

10g 速成版

以正确的格式在变量中存储阿拉伯数字

其实这很奇怪。Oracle Driver 将阿拉伯文本作为非 Unicode 文本处理,但对于数字,它实际上需要 unicode 值。在我的连接字符串中,我没有提到Unicode=True。我所做的一切都改变了:

sConnectionString = "User Id=xx;Password=xx;Data Source=XE";

sConnectionString = "User Id=xx;Password=xx;Data Source=XE;Unicode=True";

它像魅力一样工作