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
Banner程序
Oct 09 PHP
php checkbox复选框值的获取与checkbox默认值输出方法
May 15 PHP
shopex中集成的站长统计功能的代码简单分析
Aug 11 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
Jul 03 PHP
PHP简单选择排序算法实例
Jan 26 PHP
laravel 5 实现模板主题功能(续)
Mar 02 PHP
ThinkPHP表单数据智能写入create方法实例分析
Sep 27 PHP
php处理复杂xml数据示例
Jul 11 PHP
PHP 访问数据库配置通用方法(json)
May 20 PHP
PHP基于session.upload_progress 实现文件上传进度显示功能详解
Aug 09 PHP
Yii框架常见缓存应用实例小结
Sep 09 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
域名和cookie问题(域名后缀)
2012/10/10 PHP
使用session判断用户登录用户权限(超简单)
2013/06/08 PHP
php更新cookie内容的详细方法
2019/09/30 PHP
js实现iframe动态调整高度的代码
2008/01/06 Javascript
JQuery动态给table添加、删除行 改进版
2011/01/19 Javascript
jquery的键盘事件修改代码
2011/02/24 Javascript
jQuery 绑定事件到动态创建的元素上的方法实例
2013/08/18 Javascript
关于javaScript注册click事件传递参数的不成功问题
2014/07/18 Javascript
jquery获取radio值实例
2014/10/16 Javascript
js实现的动画导航菜单效果代码
2015/09/10 Javascript
JavaScript Array对象详解
2016/03/01 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
使用cropper.js裁剪头像的实例代码
2017/09/29 Javascript
详解vue 兼容IE报错解决方案
2018/12/29 Javascript
JavaScript使用prototype属性实现继承操作示例
2020/05/22 Javascript
[46:28]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
Python实现把utf-8格式的文件转换成gbk格式的文件
2015/01/22 Python
浅谈python编译pyc工程--导包问题解决
2019/03/20 Python
Python如何存储数据到json文件
2020/03/09 Python
解决keras使用cov1D函数的输入问题
2020/06/29 Python
解决pytorch 交叉熵损失输出为负数的问题
2020/07/07 Python
CSS3 3D酷炫立方体变换动画的实现
2019/03/26 HTML / CSS
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
Etam德国:内衣精品店
2019/08/25 全球购物
乌克兰排名第一的在线旅游超市:Farvater.Travel
2020/01/02 全球购物
宠物店的创业计划书范文
2014/01/11 职场文书
旷课检讨书2000字
2014/01/14 职场文书
农村葬礼主持词
2014/03/31 职场文书
大学生求职计划书
2014/04/30 职场文书
2014幼儿园教师师德师风演讲稿
2014/09/10 职场文书
个人债务授权委托书范本
2014/10/05 职场文书
2014年酒店前台工作总结
2014/11/14 职场文书
人与自然的观后感
2015/06/18 职场文书
趣味运动会简讯
2015/07/20 职场文书
运动员代表致辞
2015/07/29 职场文书
简述python四种分词工具,盘点哪个更好用?
2021/04/13 Python