|
很多朋友购买了Godaddy的Windows系列主机,想在上边做些MS SQL数据库的中文站,有的朋友用了.NET的语言,但是大家比较关心的问题是Godaddy是否支持MSSQL中文数据库,怎么操作。也有很多朋友因为这个问题被困惑了很久。今天在这里跟大家介绍下。
大家遇到的问题大体上如下:
主要问题就是中文乱码,即使在Web.Config文件中加入如下代码也没有作用:
<system.web>
<globalization requestEncoding="gb2312"″ resp culture="zh-CN" fileEncoding="gb2312" />
</system.web>
而且有的朋友直接在Godaddy控制面板提供的Web Admin管理页面的Sql Server查询分析器里,直接用SQL语句插入中文都不行,如:insert into Table (ID,topic) values ('11','中文内容');这样输入的中文也是乱码。
解决过程:
跟GoDaddy官方沟通也没有实质性的结果,回信如下:
Unfortunately, we do not currently support the use of non-Western (Latin) character sets in SQL Server databases setup on our shared hosting. I do apologize for any inconvenience this may cause.
抱歉,当前我们的共享主机系列不支持SQL Server数据库为非西方(拉丁)字符的设置,对此给您带来的不便我们深表歉意。
经过多方面查找资料以及与和Godaddy官方的多次交流,得出的结论是:Godaddy的MSSQL数据库是支持中文的,完全可以使用中文,但是必须使用比较特殊的方式。
解决方法如下:(转载请注明出处:淘主机www.taohost.net)
在进行插入操作的SQL语句里,需要在中文前加个N,比如:Insert into User values(1, N'盖茨')
代码片段举例:
Dim cmd As New sqlCommand("insert into DB (owner,intro,title) values ('"& User &"','"& request.form("intro") &"','"& request.form("title") &"')", conn)
改为:
Dim cmd As New sqlCommand("insert into DB (owner,intro,title) values (N'"& User &"',N'"& request.form("intro") &"',N'"& request.form("title") &"')", conn)
在正常输入中文数据的时候,加入是'中文'这样子输入,那么在他的前面加上一个N,这样就可以向Godaddy的MS SQL Server数据库里写入中文了。
大家可以试试看。
不过这样衍生出的麻烦就是,可能有些程序就需要独立修改一下了。但是Godaddy的主机还是很优越的,如果觉得值得做一下的,可以试试看。 |
|