很自虐的搭配php+MSSQL,太多的坑,就不说text型被截断了。
受限于现有的asp+mssql应用,新增的部分功能使用php开发。对一个表的读写,后台使用asp,读写都很正常。前台一个调用是php写的,但就是遇到一个诡异的问题,要对数据做一个很复杂的解析处理,结果是数据丢失一部分。一层一层的输出,最后才发现是从数据库读出来了数据就不完整,这可奇怪了。又不是text型的数据,加了ini_set()修正text型默认长度限制,也不行。
但被截断长度很奇怪,恰恰是254个字节,似乎正好是较老的mssql里varchar()的默认最大长度;而该字段的实际是varchar(1000);
难道是字段类型问题?
于是修改该字段为text型,再执行,全好了,没有一点异常。
看来php+mssql实在是个自虐的搭配,不知道还有多少坑….
不过限于老的程序架构,也是个没办法的,人总是要吃饭的….
[另记: 盘点php+mssql下的坑]
这些坑还是有解决方案的,先留着,以后补充
1 text/ntext型字段长度被截断
2 php下mssql 库不支持ntext类型的数据
3 “varchar(n) 其中n>254 ”类型数据被截断
4 php5.3以后的win32 官方二进制版不支持mssql库
延伸阅读
- mssql server 清空事务日志
- Microsoft SQL server性能优化必备工具
- mssql时间类型格式化/在MS SQL中去掉getdate()的时间部分,只要日期部分
- MSSQL三个关键系统表sysdatabases,sysobjects,syscolumns作用分析
- ms sql server 2005维护计划(备份)失败:应用于目标服务器 对于 xx 失败
- 简单统计SQLSERVER用户数据表大小(包括记录总数和空间占用情况)
- ms sql server 查看服务器当前的连接会话及会话信息(客户端ip地址,协议,时间,读写情况等)
- ms sql在对大表做很慢的更新语句时,应单条处理,而不要一个语句更新多条,以避免锁表而阻塞其它应用的读操作
- MS SQL Server性能分析:几个重要的分析点
- PHP+MSSQL TEXT字段被截断的解决方案
- 关于php打开文件的写法原因之辨误
- php excel类 ,phpExcel使用方法介绍
- php进制转换函数
- 为windows下php5.2安装memcache等扩展/及扩展官方下载
- DiscuzX!1.5/2.0 新版状态字段解释/forum_thread,forum_post表中status,displayorder,invisible字段
0 条评论。