php,sql文について質問があります。

現在、テキストボックスに文字を入力したら、DBにその名前のテーブルを新規作成するプログラミングに挑戦中なのですが、
以下のプログラミングでは、テーブルが作成されません
どこ
を直したらいいのでしょうか?
php,sqlに詳しい方どうかご教授お願い致します。
<?php
try{
$dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc');
}catch (PDOException $e){

var_dump($e->getMessage());
}

$stt = $db->prepare('CREATE TABLE date( abcID char(6) )'
);
$stt->execute();
echo'テーブルを新規作成しました';
?>

ちなみに以下のプログラミグでデーターベースに接続出来ることは確認しております
<?php
try{
$dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc');
} catch(PDOException $e){
var_dump($e->getMessage());
exit;
}
echo'DBに接続しました';
?>

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2014/01/23 21:10:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:gizmo5 No.1

回答回数504ベストアンサー獲得回数141

ポイント100pt

質問にあるソースコードを修正してみました。動作確認はしていませんが動くと思います。
・prepare するオブジェクトの変数名が間違ってたので修正
・prepare() や execute() でも例外が出る可能性があるので try ブロックを拡張
・接続の切断を追加

<?php
try {
	$dbh = new PDO('mysql:host=localhost;dbname=aaaa','bbbb','cccc');

	$stt = $dbh->prepare('CREATE TABLE date( abcID char(6) )');
	$stt->execute();
	echo'テーブルを新規作成しました';

	$dbh = null;

} catch (PDOException $e) {
	var_dump($e->getMessage());
}
?>
  • id:tezcello
    マルチポストという言葉をご存知でしょうか?
    http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13119553918

    一般には『行儀の悪い行為』と言われます。(理由についてはお調べください)
  • id:kanmaik
    すいませんでした。知りませんでした。
    ご指摘ありがとうございます
  • id:tezcello
    調べて頂けたのなら「なぜ嫌われるか」もお分かりでしょう。

    質問者さんの品格が問われる話ですし、今後の質問への回答にも影響するので
    キチンと後始末するというのが次善の手ですね。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません