我正在MSSQL数据库上使用PHP,有时我需要为Intranet导入一些SQL查询。
SQL查询保存在.sql文件中,类似
INSERT INTO table VALUES ('Do this and that');
INSERT INTO table VALUES ('This has 10% or 20€ discount');
问题在于有时导入会由于不支持的字符(%和€)而中断。我尝试将连接设置为使用UTF-8,但仍然无法正常工作...我猜我使用的方法有问题:
$connExchange = new PDO('dblib:version=7.0;charset=UTF-8;host=' . $host . ';dbname=' . $db, $user, $pass);
$connExchange->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
如何设置连接以使用正确的收藏集?
我正在使用php7.0.30,来自ubuntu 16.04存储库。
MSSQL数据库正在使用SQL_Latin1_General_CP1_CI_AS
。
答案 0 :(得分:0)
$connExchange->exec("SET NAMES 'utf8'");
应该做的工作