PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法


Posted in PHP onMarch 10, 2009

Author: Wenlong Wu
一、针对MS SQL SERVER数据库

有两种解决方案,如下:

修改php.ini来实现: 打开php.ini,可看到mssql.textsize,mssql.textlimit两个选项:

; Valid range 0 - 2147483647. Default = 4096.

;mssql.textlimit = 4096

; Valid range 0 - 2147483647. Default = 4096.

;mssql.textsize = 4096

可以看到默认配置为4096字节,也就是经常碰到的被截断为4K,将之改为合适的大小,去掉前面的分号,然后保存并重起WEB服务器即可。

从上面两个选项可看到范围为:0 - 2147483647字节,其实-1也可以的,查看一下PHP源代码即可发现-1表示无限制 :)


if (MS_SQL_G(textlimit) != -1) {

sprintf(buffer, "%li", MS_SQL_G(textlimit));

if (DBSETOPT(mssql.link, DBTEXTLIMIT, buffer)==FAIL) {

efree(hashed_details);

dbfreelogin(mssql.login);

RETURN_FALSE;

}

}

if (MS_SQL_G(textsize) != -1) {

sprintf(buffer, "SET TEXTSIZE %li", MS_SQL_G(textsize));

dbcmd(mssql.link, buffer);

dbsqlexec(mssql.link);

dbresults(mssql.link);

}

在PHP中查询之前执行SET TEXTSIZE 合适的大小: 只需在SELECT之前执行

mssql_query("SET TEXTSIZE 65536");

从上面PHP源代码中可看到其实也是执行SET TEXTSIZE的 :)

二、针对Sybase数据库

由于该扩展在php.ini没有像SQL SERVER那样的选项可配置,所以只有采用上面的第二种方法,即:

在SELECT之前执行

sybase_query("SET TEXTSIZE 65536");

PHP 相关文章推荐
通过html表格发电子邮件
Oct 09 PHP
由php if 想到的些问题
Mar 22 PHP
PHP 日常开发小技巧
Sep 23 PHP
php编写一个简单的路由类
Apr 13 PHP
PHP中获取变量的变量名的一段代码的bug分析
Jul 07 PHP
PHP无法访问远程mysql的问题分析及解决
May 16 PHP
php 批量替换程序的具体实现代码
Oct 04 PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
Mar 12 PHP
php实现编辑和保存文件的方法
Jul 20 PHP
php给图片加文字水印
Jul 31 PHP
Linux(CentOS)下PHP扩展PDO编译安装的方法
Apr 07 PHP
php中pcntl_fork创建子进程的方法实例
Mar 14 PHP
php mssql 日期出现中文字符的解决方法
Mar 10 #PHP
linux php mysql数据库备份实现代码
Mar 10 #PHP
php生成SessionID和图片校验码的思路和实现代码
Mar 10 #PHP
php 数组的创建、调用和更新实现代码
Mar 09 #PHP
在JavaScript中调用php程序
Mar 09 #PHP
隐性调用php程序的方法
Mar 09 #PHP
php动态生成JavaScript代码
Mar 09 #PHP
You might like
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
php 微信公众平台开发模式实现多客服的实例代码
2016/11/07 PHP
php 广告点击统计代码(php+mysql)
2018/02/21 PHP
jQuery学习笔记之jQuery的事件
2010/12/22 Javascript
关于jquery input textare 事件绑定及用法学习
2013/04/03 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
JS实现多物体缓冲运动实例代码
2013/11/29 Javascript
推荐一个自己用的封装好的javascript插件
2015/01/29 Javascript
纯HTML5制作围住神经猫游戏-附源码下载
2015/08/23 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
vuex state中的数组变化监听实例
2019/11/06 Javascript
[14:50]2018DOTA2亚洲邀请赛开幕式
2018/04/03 DOTA
python中元类用法实例
2014/10/10 Python
Python二分查找详解
2015/09/13 Python
python用pickle模块实现“增删改查”的简易功能
2017/06/07 Python
详解python中的文件与目录操作
2017/07/11 Python
浅析Python与Mongodb数据库之间的操作方法
2019/07/01 Python
Django密码系统实现过程详解
2019/07/19 Python
Python Django view 两种return的实现方式
2020/03/16 Python
利用jupyter网页版本进行python函数查询方式
2020/04/14 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
django美化后台django-suit的安装配置操作
2020/07/12 Python
python 实现简单的计算器(gui界面)
2020/11/11 Python
利用CSS3参考手册和CSS3代码生成工具加速来学习网页制
2012/07/11 HTML / CSS
孕妇装中的著名品牌:Isabella Oliver(伊莎贝拉·奥利弗)
2016/10/31 全球购物
安全标准化实施方案
2014/02/20 职场文书
关于拾金不昧的感谢信
2015/01/21 职场文书
教师求职信怎么写
2015/03/20 职场文书
2015年机关纠风工作总结
2015/05/15 职场文书
民事二审代理词
2015/05/25 职场文书
2019商业计划书格式、范文
2019/04/24 职场文书
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
2021/06/30 SQL Server
详解Flutter和Dart取消Future的三种方法
2022/04/07 Java/Android
Go语言安装并操作redis的go-redis库
2022/04/14 Golang
排查Tomcat进程假死的问题
2022/05/06 Servers