odbc_fetch_array返回乱码值

时间:2017-06-16 19:47:44

标签: php sql sql-server

我有一个查找结果的查询。查询本身在Microsoft SQL Server Management中工作正常,因此我知道它不是查询本身。我能想到的只是我如何返回结果的细微差别。

$Degree1 = '';
$queryDegree1 = 'SELECT TOP (1) [Degree] FROM [DatabaseName].[dbo].[Education] WHERE [Person2ID] = 454 AND [Rank] = 1';
$resultDegree1 = odbc_exec($connection, $queryDegree1) or die(odbc_errormsg());
if ($resultDegree1) {
    while($row = odbc_fetch_array( $resultDegree1 )) {
        $Degree1 = $row['Degree'];
    }
}

当我回复$Degree1时,它会吐出:�!�7.0;���\Pro���������x86)���\v7.���\Win���;C:\���ows��

我希望该值为PhD, Chemistry, University at City

列本身是varchar(max),我将其用于同一数据库中其他表中的其他列,并且这些列完全返回值。

1 个答案:

答案 0 :(得分:1)

所以我最终删除了表并重新创建它。然后我修改了我的插入查询,以确保我包含N'[value]'。这似乎解决了这个问题。