ASP.NET使用System.Data.OracleClient连接Oracle插入中文数据出现乱码的解决方案
网上众说纷纭,比如怀疑是本地查看数据的客户端有问题,修改数据库客户端的字符集;有怀疑数据库字符集有问题的或者说不要使用OracleClient,使用Oracle.DataAccess或者OraOleDb.Oracle等等
最后,
本着一条信仰,相信微软不可能对Oracle的支持做的这么烂,终于找到了问题的所在,只需要修改配置文件的连接即可。
<connectionStrings>
<add name="OracleOA" connectionString=" Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)));User Id=SCOTT;Password=alex;Unicode=True; " providerName ="System.Data.OracleClient" />
</connectionStrings>
<add name="OracleOA" connectionString=" Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)));User Id=SCOTT;Password=alex;Unicode=True; " providerName ="System.Data.OracleClient" />
</connectionStrings>
加上“Unicode=True”,再插入数据,一切乱码问题都不再是问题