php读取mssql中的text字段不完整的问题

来源:互联网 发布:算法怎么入门 编辑:程序博客网 时间:2024/05/16 16:07

修改php.ini ,去掉前面的;,将那个4096改大即可。
[MSSQL]
mssql.textlimit = 4096

 

PHP在查询MSSQL数据库的text字段的内容时,如果内容长度过长,则会有部分内容被截取。这也许并不是我们想要的结果,解决办法:


1、修改php.ini文件

打开php.ini文件,查找mssql.textlimit,可以找到如下内容:

;Valid range 0 - 2147483647. Default = 4096.
;mssql.textlimit = 4096

; Valid range 0 - 2147483647. Default = 4096.
;mssql.textsize = 4096

把mssql.textlimit = 4096和mssql.textsize = 4096两行前面的分号去掉,将数值改大,重新启动服务。

2、通过ini_set进行设置

上面说的是有服务器管理权限的情况下的解决办法。也许有些时候我们并没有服务器管理权限,那只能在程序上进行设置了。

@ini_set( mssql.textsize , 200000) ;

加上这句即可以完成设置。

3、通过执行SQL语句来解决

如:mssql_query ( 'SET TEXTSIZE 65536' , $myConn );

其中,$myConn是数据连接标识。这是比较原始的写法,要表达的意思就是执行'SET TEXTSIZE 65536'这样一条SQL语句。

 

注意:如果字段类型是ntext,有时会出现乱码现象,看上去有点像是内容被不正常截取。这种情况可以在SQL语句中将内容转换成text类型,写法如下:

select id,convert(text,content) as content from news

原创粉丝点击