接続
文字コードの設定
try {
$pdo = new PDO($db_dsn,$db_user, $db_password,
array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET `utf8`"
)
);
} catch (PDOException $e) {
die($e->getMessage());
}
推奨されないらしい
$pdo = new PDO(
'mysql:host=hostname;dbname=defaultDbName',
'username',
'password',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")
);
持続的な接続
検討中。
データベースサーバへの持続的な接続による恩恵をこうむる web アプリケーションは多いでしょう。持続的な接続は、スクリプトが 終了しても閉じられずにキャッシュされ、他のスクリプトが同じ内容の 接続を要求してきた際にそれが再利用されます。持続的接続の キャッシュにより、スクリプトがデータベースを使用するたびに 新しい接続を確立するオーバーヘッドを避けることができます。 それにより、結果として web アプリケーションを高速化できるように なります。
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
PDO::ATTR_PERSISTENT => true
));
今の所の接続案
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET `utf8`",
PDO::ATTR_PERSISTENT => true
));
参考
SET NAMESは禁止
登録:
コメントの投稿
(
Atom
)
このコメントは投稿者によって削除されました。
返信削除SET NAMES も SET CHARACTER SET も同じです。
返信削除http://qiita.com/mpyw/items/b00b72c5c95aac573b71