php连接sql server使用sqlsrv_fetch_array无法查询超长数据
服务器操作系统:WindowsServer2003php版本5.3vc6数据库:sqlserver2008假设现在表A中有4个字段(id,name,content,fla...
服务器操作系统:Windows Server 2003
php版本5.3 vc6
数据库: sql server 2008
假设现在表A中有4个字段(id, name, content, flag)
当content长度超长时,这条记录就查不出来了。
php代码是这样写的
$stmt = sqlsrv_query($sql);
$rs = array();
where($res = sqlsrv_fetch_array($stmt))
{
$rs[] = $res;
{
返回的$rs是空的。
但是相同的代码在php 5.4 vc9上【本地开发环境,数据库连的服务器数据库】是可以查询的。
所以是哪里的配置不对么?还是我写法不对?求教! 展开
php版本5.3 vc6
数据库: sql server 2008
假设现在表A中有4个字段(id, name, content, flag)
当content长度超长时,这条记录就查不出来了。
php代码是这样写的
$stmt = sqlsrv_query($sql);
$rs = array();
where($res = sqlsrv_fetch_array($stmt))
{
$rs[] = $res;
{
返回的$rs是空的。
但是相同的代码在php 5.4 vc9上【本地开发环境,数据库连的服务器数据库】是可以查询的。
所以是哪里的配置不对么?还是我写法不对?求教! 展开
1个回答
展开全部
//$stmt = sqlsrv_query($sql);
// 上面这句有问题,类似如下写法:
$serverName = "serverName\sqlexpress" ;
$connectionInfo = array( "Database" => "dbName" , "UID" => "username" , "PWD" => "password" );
$conn = sqlsrv_connect ( $serverName , $connectionInfo );
if( $conn === false ) {
die( print_r ( sqlsrv_errors (), true ));
}
$stmt = sqlsrv_query($conn, $sql);
追问
这里是我记错了,原因不在这。是数据库的那个字段类型为nvarchar(MAX),改成TEXT就可以了,可能是5.3的sql server驱动不支持吧。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询