ODBC Windows 服务器 2003 来自 Windows 服务器 2012
ODBC Windows Server 2003 from Windows Server 2012
我们需要通过 ODBC 从 Windows 2003 服务器到 Windows 2012 服务器进行 SQL 选择(我知道 2003 存在风险且不受支持)
我已经在 windows 2003 服务器上安装了来自 Microsoft® SQL Server® 2008 R2 SP2 的 ODBC 本机 SQL 驱动程序。配置并测试连接工作。
在PHP我使用:
$dsn = "Whosebugdsn";
$user = "Whosebug";
$pwd = "Whosebug";
if (!$conn = odbc_connect($dsn, $user, $pwd))
{
echo "ODBC-Connection failed";
exit;
}
else {
if ($conn) {
$sql = "SELECT * FROM [DBNAME].[dbo].[Status];";
$rs = odbc_exec($conn, $sql);
while(odbc_fetch_row($rs)) {
$name = odbc_result($rs,"Name");
echo "name : $name <br>";
}
}
}
?>
列数正确,但结果是很多垃圾:
name :
name : ãG
name : ãG
name : ãG
name : ãG
G
name : ãG
name : ãG
name : ãG
G¨
name : ãG
name : ãG
字符有时会变化
我将 2012 Servers 数据库的兼容性设置为 SQL Server 2008 (100)。
谁能帮帮我?
字符串的数据库类型从 ef 核心设置为 nvarchar,varchar 可以正常工作
我们需要通过 ODBC 从 Windows 2003 服务器到 Windows 2012 服务器进行 SQL 选择(我知道 2003 存在风险且不受支持)
我已经在 windows 2003 服务器上安装了来自 Microsoft® SQL Server® 2008 R2 SP2 的 ODBC 本机 SQL 驱动程序。配置并测试连接工作。
在PHP我使用:
$dsn = "Whosebugdsn";
$user = "Whosebug";
$pwd = "Whosebug";
if (!$conn = odbc_connect($dsn, $user, $pwd))
{
echo "ODBC-Connection failed";
exit;
}
else {
if ($conn) {
$sql = "SELECT * FROM [DBNAME].[dbo].[Status];";
$rs = odbc_exec($conn, $sql);
while(odbc_fetch_row($rs)) {
$name = odbc_result($rs,"Name");
echo "name : $name <br>";
}
}
}
?>
列数正确,但结果是很多垃圾:
name :
name : ãG
name : ãG
name : ãG
name : ãG
G
name : ãG
name : ãG
name : ãG
G¨
name : ãG
name : ãG
字符有时会变化
我将 2012 Servers 数据库的兼容性设置为 SQL Server 2008 (100)。
谁能帮帮我?
字符串的数据库类型从 ef 核心设置为 nvarchar,varchar 可以正常工作