最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP中查詢SQL Server或Sybase時TEXT字段被截斷的解決方法

 更新時間:2009年03月10日 21:11:05   作者:  
在CSDN的PHP版里老是看到有人問TEXT字段被截斷的問題,偶也回答了無數(shù)次,今天索性就總結一下吧
Author: Wenlong Wu
一、針對MS SQL SERVER數(shù)據(jù)庫
   有兩種解決方案,如下:
   修改php.ini來實現(xiàn): 打開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字節(jié),也就是經(jīng)常碰到的被截斷為4K,將之改為合適的大小,去掉前面的分號,然后保存并重起WEB服務器即可。
   從上面兩個選項可看到范圍為:0 - 2147483647字節(jié),其實-1也可以的,查看一下PHP源代碼即可發(fā)現(xiàn)-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中查詢之前執(zhí)行SET TEXTSIZE 合適的大?。?只需在SELECT之前執(zhí)行
   mssql_query("SET TEXTSIZE 65536");
   從上面PHP源代碼中可看到其實也是執(zhí)行SET TEXTSIZE的 :)
  二、針對Sybase數(shù)據(jù)庫
   由于該擴展在php.ini沒有像SQL SERVER那樣的選項可配置,所以只有采用上面的第二種方法,即:
   在SELECT之前執(zhí)行
   sybase_query("SET TEXTSIZE 65536");

相關文章

最新評論

阆中市| 珲春市| 且末县| 澄迈县| 科技| 鞍山市| 合阳县| 武清区| 长岛县| 遂宁市| 陇川县| 灯塔市| 磐安县| 修水县| 油尖旺区| 清徐县| 繁峙县| 垣曲县| 阿城市| 肃宁县| 巴彦淖尔市| 庆安县| 铜鼓县| 衡阳市| 甘肃省| 雅安市| 汕尾市| 甘德县| 个旧市| 洛隆县| 苍梧县| 威海市| 公主岭市| 伊春市| 满城县| 潼关县| 恩平市| 梁山县| 萝北县| 墨竹工卡县| 德兴市|