私が書いた例
コードをコピー コードは次のとおりです。
<
require("adodb/adodb.inc? .php" );
$conn=newadoconnection('mysql');
$conn->connect("localhost","root","2027205","bh38") または die("接続に失敗しました") ;
$conn->execute("set names gb2312");
$conn->execute("INSERT INTO `vv` (`cc`) VALUES ('エンコードを変更すると機能します ');") または die("Error");
$rc=$conn->execute("select * from vv");
while(!$rc ->EOF)
{
echo($rc->fields["cc"]);
$rc->movenext();
? 🎜>
もちろん、私たちも同様です。次のコマンドを使用してデータベースの文字セットを変更できます。
alter database da_name default Character set 'charset'
クライアントはそれを gbk 形式で送信します。次の構成を使用します。
SET Character_set_client='gbk'
SET Character_set_connection='gbk'
SET Character_set_results='gbk'
この構成は、SET NAMES 'gbk' と同等です。
作成したばかりのデータベースを操作します
mysql> use test;
データベースが mysqlcode 値に挿入されました (null,'php愛好家');
エラー 1406 (22001)行 1 の列 'content' が長すぎます
文字セットが gbk として指定されておらず、挿入中にエラーが発生しました
mysql>セット名 'gbk'
クエリは OK、影響を受ける行は 0 件です (0.02 sec)
指定された文字セットは gbk
mysql> insert into mysqlcodevalues(null,'php Lovers');
クエリは OK、1 行が影響を受けました (0.00 秒)
挿入は成功しました
mysql> select * from mysqlcode; ---- -----------
| -
| 1 | PHP 愛好家 |
---- -----------
セット内 1 行 (0.00 秒)
文字セット gbk が指定されていない場合でも読み取ります次のように指定された文字化けしたコードが表示されます。
select * from mysqlcode;
| --- -----
| 1 | php???
---- --------
セット内 1 行 (0.00 秒)