SQL语句如下:
insert into test1 (txt) values ('Wir bevorzugen Rückerstattung, könnten Sie, dass dringend für mich tun? Grüße')
运行之后,发现输出的文本好多?号.
打开MSSQL企业管理器,数据库属性->选项->排序规则,设置成 chinese_prc_ci_ai后,再运行SQL语句输出时就正常了。
不管是输入英语,汉语、德语、俄语、西班牙语、日语还其他语言都能正确显示。
以下是测试代码:
<?php
include 'inc.php';
$dbhost = '127.0.0.1,7788';
$dbuser = 'sa'; //你的mssql用户名
$dbpass = 'admin'; //你的mssql密码
$dbname = 'test'; //你的mssql库名
$connect = @odbc_connect("Driver={SQL Server};Server=$dbhost;Database=$dbname","$dbuser","$dbpass")
or
die('<br><strong>odbc_error</strong>:'.odbc_error() .'<br><strong>odbc_errormsg</strong>:'.odbc_errormsg().'');
function odbc_execs($sql){
global $connect;
$exec = odbc_exec($connect,$sql) or
die('<br><strong>odbc_error</strong>:'.odbc_error()
.'<br><strong>odbc_errormsg</strong>:'.odbc_errormsg().''
.'<br><strong>SQL</strong>:'.$sql.'');
return $exec;
}
//$sql ='drop table test1';
/*$sql = 'create table test1 (
id int identity(1,1),
txt nvarchar (200),
primary key ( id)
)';
$exec = odbc_execs($sql);
var_dump($exec);*/
$sql="insert into test1 (txt) values ('Wir bevorzugen Rückerstattung, könnten Sie, dass dringend für mich tun? Grüße')";
$exec = odbc_execs($sql);
$sql = "SELECT txt FROM test1 WHERE id=1";
$exec = odbc_execs($sql);
$txt = odbc_result($exec,1);
var_dump($txt);
?>
声明: 本文由( admin )原创编译,转载请保留链接: MSSQL SERVER 2005存储多语言数据乱码的解决方法
------====== 本站公告 ======------
联系信息:
电话:19970108113(微信同号) QQ:3142401606
支付宝:https://me.alipay.com/lxq73061
相关插件程序等信息均会在站内发布,敬请关注。