簡體   English   中英

連接到mssql后utf-8無法插入mysql

[英]utf-8 cannot insert to mysql after connection to mssql

首先,我連接了兩個數據庫-mssql和mysql-。

 global $link,$link_voip;
    $link = mssql_connect('A', 'B', 'C');
    mssql_select_db('D', $link);
    if (!$link) {
        die('Something went wrong while connecting to MSSQL');
    }
    $link_voip = mysql_connect('E','F','G') or die("err");

mysql_query("SET NAMES 'utf8'", $link_voip);
mysql_query("SET CHARACTER SET 'utf8'", $link_voip);
mysql_query("SET character_set_connection = 'utf8'", $link_voip);
mysql_select_db('voip', $link_voip);

我想用mssql的信息更新 mysql數據庫上的一行:我正確地獲取了信息,但是mysql數據庫無法插入utf-8 (波斯語)。
我正在使用phpmyadmin ,我曾經嘗試過:
1-將歸類更改為utf_general_ci
2添加

mysql_query("SET NAMES 'utf8'", $link_voip);
mysql_query("SET CHARACTER SET 'utf8'", $link_voip);

查詢之前。
在可能更改的變量前加3N。

    $q="UPDATE cc_card SET  firstname=N'$fname' , lastname=N'$lname',phone='$phone',credit='$credit' 
    WHERE id='$id'";

但仍然不起作用。

1-在mssql中
1-1。 檢查表類型為nvarchar
1-2。 轉換為varbinary(CONVERT(varbinary(MAX),tblname)
1-3。 使用bin2hex
1-3。 使用chr(hexdec $ varibale)
1-5。 使用iconv
2-在mysql中 :在變量前使用N進行更新/插入數據庫

暫無
暫無

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

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