SQL server不支持utf8 php却用utf8的矛盾问题解决方法(2)

sqlserver 建库指定utf-8 修改库为utf-8编码

CREATE DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
ALTER DATABASE paas COLLATE Chinese_PRC_CI_AS
GO

让ASP和MS SQL SERVER支持UTF-8编码存储多国语言文字

近日在ASP+MS SQL存储UTF-8编码内容的时候,出现乱码的情况,经过查询发现要使SQL SERVER支持UTF-8编码格式,必须做一些修改才可以。

1、确保ASP页面是UTF-8编码的,并在ASP页面顶部声明中使用<%@ LANGUAGE = VBScript CodePage = 65001%>进行编码声明

2、输出的HTML页面中声明字符集:<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

3、在进行URL参数传递的时候,要使用Server.URLEncode()方法进行编码

4、使用JS进行URL参数传递中文的时候,要使用escape进行编码

5、在将UTF-8编码的内容存入SQL SERVER数据库中的时候,要存储的字段必须设置为NVARCHAR类型,SQL语句要在内容前加N表示,如insert into user (name) values (N´&username&´),除id意外的字段都需要加N。