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 相关文章推荐
PHP个人网站架设连环讲(二)
Oct 09 PHP
php 移除数组重复元素的一点说明
Nov 27 PHP
PHP 图片上传实现代码 带详细注释
Apr 29 PHP
防止本地用户用fsockopen DDOS攻击对策
Nov 02 PHP
PHP中ini_set和ini_get函数的用法小结
Feb 18 PHP
ThinkPHP3.1新特性之对分组支持的改进与完善概述
Jun 19 PHP
php-redis中的sort排序函数总结
Jul 08 PHP
PHP中两个float(浮点数)比较实例分析
Sep 27 PHP
PHP 信号管理知识整理汇总
Feb 19 PHP
php数值转换时间及时间转换数值用法示例
May 18 PHP
PHP递归的三种常用方式
Feb 28 PHP
php中字符串和整数比较的操作方法
Jun 06 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
php天翼开放平台短信发送接口实现方法
2014/12/22 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
thinkPHP框架动态配置用法实例分析
2018/06/14 PHP
thinkPHP5框架路由常用知识点汇总
2019/09/15 PHP
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
2019/11/04 PHP
PHP利用curl发送HTTP请求的实例代码
2020/07/09 PHP
PHP 99乘法表的几种实现代码
2020/10/13 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
用javascript控制iframe滚动的代码
2007/04/10 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
JS+CSS实现的简单折叠展开多级菜单效果
2015/09/12 Javascript
值得分享的轻量级Bootstrap Table表格插件
2016/05/30 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
2016/08/31 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
微信浏览器下拉黑边解决方案 wScroollFix
2020/01/21 Javascript
[01:09:19]DOTA2-DPC中国联赛 正赛 VG vs Aster BO3 第二场 2月28日
2021/03/11 DOTA
详解Python中映射类型(字典)操作符的概念和使用
2015/08/19 Python
利用python实现数据分析
2017/01/11 Python
Django forms组件的使用教程
2018/10/08 Python
python实现一组典型数据格式转换
2018/12/15 Python
python实现多层感知器MLP(基于双月数据集)
2019/01/18 Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
2019/06/21 Python
python设置环境变量的作用和实例
2019/07/09 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
python 实现rolling和apply函数的向下取值操作
2020/06/08 Python
python为什么要安装到c盘
2020/07/20 Python
Django实现微信小程序支付的示例代码
2020/09/03 Python
python xlsxwriter模块的使用
2020/12/24 Python
CSS3中的display:grid,网格布局介绍
2019/10/30 HTML / CSS
带你认识HTML5中的WebSocket
2015/05/22 HTML / CSS
应聘护士求职信
2014/07/21 职场文书
大学奖学金获奖感言
2014/08/15 职场文书
治庸问责心得体会
2014/09/12 职场文书
机关党员三严三实心得体会
2014/10/13 职场文书
电影红河谷观后感
2015/06/11 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书