簡體   English   中英

PDO DBLIB SQL 服務器 Unicode 問題

[英]PDO DBLIB SQL Server Unicode issue

當我將數據插入 SQL 服務器時,拉丁字母被添加為疑問字符。

嘗試了很多方法,但沒有任何幫助。 使用占位符時,不能將N前綴與 pdo 一起使用。 在 pdo 中設置 Unicode 的任何工作方式?

我試過了:

  1. ini_set('default_charset', 'utf-8');
  2. $dsn = "dblib:version=7.0;charset=UTF-8;host={$params['host']};dbname={$params['dbname']}";
  3. $db->exec("set names utf8");

解決了!

代替查詢中的占位符寫問號 (?) 和 N 前綴將起作用。

例子:

$sql = "UPDATE [dbo].[myTable] SET name=N?, xml_data=? WHERE id=?";
$result = $db->prepare($sql);
return $result->execute(array($name, $xml, $id));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM