background image

php 使用 sql 数据库 获取字段问题介绍

由于

sql server 中,ntext 和 nvarchar 字段是用 unicode 编码存储内容的,因此 php 通过 mssql

扩展读取带

ntext 和 nvarchar 类型字段的时候会抱错

PB 开发过程中,由于数据库中使用了 ntext 字段,出现以下提示错误,郁闷了很长时间

找不到解决方案,后查阅大量资料,终于明白:
PB 报错: 不能用 DB-Library(如 ISQL)或 ODBC 3.7 或更早版本将 ntext 数据或仅使用

 

Unicode 排序规则的 Unicode 数据发送到客户端。
————————————————
由于

sql server 中,ntext 和 nvarchar 字段是用 unicode 编码存储内容的,因此 php 通过 mssql

扩展读取带

ntext 和 nvarchar 类型字段的时候会抱错。

如果

 title 字段类型为 nvarchar,content 字段类型为 ntext ,那么下面的 sql 语句会报错:

select title,content from article
正确的写法是:
select convert(varchar(255),title) 

as

 title, convert(text,content) 

as

 content from article 

或者不使用

ntext 字段