<?php
try {
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$sql = $DBH->exec("
CREATE TABLE `store_config` (
store_name varchar(30),
last_update date)
");
} catch (PDOException $e) {
echo "Could not connect to database.";
$DBH = null;
}
?>
PDOExceptionはスローされません。おそらくSQLエラーがありますが、そのエラーを取得する方法がわかりません。また、phpMyAdminでデータベースをチェックすると、テーブルが作成されません。私は何を間違えたのですか?なぜこのPHP/SQLはテーブルを作成しませんか?
読んでいただきありがとうございます。
EDIT: 私はphpMyAdminのに直接同じSQLコードを実行すると、それが許可拒否エラーを与えた...
1142 - テーブルのためのユーザー '$ユーザ' に拒否されたコマンドのCREATE @ '$のmy_ip' ' store_config '
WebホストWebフォームでユーザーを作成したときに、そのユーザーにデータベース所有者を許可するオプションが与えられていないので、私は混乱しています。
EDIT:
私は自分のユーザアカウント 'DBOアクセス' を与え、それが(表が作成された)動作するようになりました。
ご意見ありがとうございます。
SQLは、MySQLに入れるだけで動作するため、接続していないか、dbnameがMySQL上の実際のDBの名前ではないか、そのユーザーにDB。 – thezboe
@thezboe私の投稿の編集を参照してください - 私は今エラーがあります(許可が拒否されました) – Ozzy