• ベストアンサー

phpでのmysqlのあるテーブルの有無の判定方法

phpでmysqlのあるテーブルがない場合、テーブルを作るというのをやりたいのですが、テーブルがあるかないかの判定はどういう風に行えばいいでしょうか。 データベースは存在していて、pdoでmysqlを操作したいと考えています。

  • h_mp
  • お礼率97% (67/69)
  • MySQL
  • 回答数1
  • ありがとう数9

質問者が選んだベストアンサー

  • ベストアンサー
  • ONEONE
  • ベストアンサー率48% (279/575)
回答No.1

SQLとして CREATE TABLE IF NOT EXISTS を流せばよいと思います。 http://www.dbonline.jp/mysql/table/index1.html

h_mp
質問者

お礼

なるほど。それだけで、ない場合テーブルが作られるんですね。 ありがとうございます。

関連するQ&A

  • PHPでMySQLのデータベースを新規で作るには?

    こんにちは PHPとMySQLを勉強しているものです。 PHPからMySQLの既存データベースの接続や、テーブル参照はわかったのですが、 新規にデータベースやテーブルを作るときには PHPからどういう記述を行えばできますでしょうか。

    • ベストアンサー
    • PHP
  • PHP5.26でPDO(MySQL)が設定できません

    設定を確認しましたがphpinfo()のPDOの欄がno valueのままです。 PDOを使おうとすると"could not find driver"となります。 PHPのセットアップ時に選択するようになっていたので、 それ以外は何もしていないと思います。 --------------------------------------------------- 環境:Windows/PHP5.26/Apache2.28/MySQL5.0 ■php.ini内 [PHP_PDO] extension=php_pdo.dll [PHP_PDO_MYSQL] extension=php_pdo_mysql.dll [PHP_MYSQL] extension=php_mysql.dll extension_dir ="C:\Program Files\PHP\ext" ■"C:\Program Files\PHP\ext"内 php_pdo_mysql.dll php_pdo.dll php_pdo_mysql.dll 試しにセットアップで全てのDB用のPDOを選択すると、「odbc, sqlite, user」のみ 表示されるようになりました。。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHP+MySQLでこのようなシステム

    PHPとMySQLで、このようなシステムを作れないかと考えているのですが、可能か不可能か、もしくはヒントだけでもいただだけないかと思い、質問させていただきました。 まず、PHP+MySQLというのは、javascriptとかも初心者用の本を買ったりしたのですが、こういうところに使うとかいまいち理解できず、 現在PHP+MySQLと必要な時だけjavascriptのサンプルをコピペとかで使って事足りているということです。 PHP+MySQLの知識は、浅い方ですが、データベースを使っての表示や条件抽出くらいはできるくらいです。 主に使うデータベース・ページは、下記の通りです。 データベース内にテーブルが複数あります。 ・table_01 ・table_02 ・table_03 全テーブルデータの一覧を表示させるPHP(1ページ20件毎に表示させています) ・itiran.php 各会員ページのPHP ・mypage.php 「このようなシステム」というのは、 ・一覧ページ【itiran.php】に[追加]ボタンを作り、[追加]を押すと会員ページ【mypage.php】に追加した商品が一覧として表示される ・【itiran.php】および【mypage.php】で追加した商品を一覧から[削除]できる ・【itiran.php】の各商品には、追加している人数[登録数]が表示される([削除]した場合は、人数は-1となる) 【itiran.php】テーブル例 ┼───┼───┼───────┼───┼ │NAME│ZAIKO│お気に入り    │登録数│ ┼───┼───┼───────┼───┼ │ポニョ │2,000 │ 追加       │500 │ ┼───┼───┼───────┼───┼ │ゲド  │1,000 │ 追加       │300 │ ┼───┼───┼───────┼───┼ │トトロ │9,000  │登録済み・・削除│100 │ ┼───┼───┼───────┼───┼ ・データベースは、各テーブル更新があった場合、一度の更新数が多くいので、1テーブルまるごとCSVで更新しています。 ・登録数を、このテーブル内に入れておいた方が良いのでしょうか。 参考になるようなサイトもなく、PHP+MySQL可能か不可能か、もしくはヒントだけでもお願い致します。

    • ベストアンサー
    • PHP
  • MySQLをPHPで操作

    今、ヤフーのようなログインシステムを作ろうとしているものです。 ここでお世話になりながら、データベースをPHPで操作してログインシステムを作ればいいということは分かったので、PHPの書き方とMySQLの仕組みを勉強したところです。 しかし、MySQLでPHPを操作する方法に躓いてしまい、なかなか進みません。 教えてください。

    • ベストアンサー
    • MySQL
  • PHPを始めるにあたって質問です。

    よろしくお願いします。 PHPを始めてみようかと思い、簡単な物をPHP5でPDOからMySQLを使って初めて書いて、 ローカル(XP + xampp と vmware上の ubuntu )では一応動いたのですが、 あるレンタルサーバーでは、PHP4.4.6でPDOが使えない様子で、 別なサーバーではPHP5.2.3なんですが、PDOのドライバがSQLiteしか使えないようでした。 そんなこんなで、お聞きしたいのですが、 PHPでデータベースを使った小規模なアプリケーションを書いて、レンタルサーバーで動かす場合に 無難というか、環境がそろいやすいというか、移植しやすい組み合わせというのがあれば教えて下さい。 例えば、 PHP5 + PDO + SQLite とか PHP4 + PEAR::DB + MySQL よろしくお願いします。

    • 締切済み
    • PHP
  • mysql

    phpでmysqlのテーブルからデータを引っ張ってくる構文なのですが $pdo = new PDO("mysql:dbname=データベース名", "root", "root"); $st = $pdo->query("SELECT * FROM テーブル名"); while ($row = $st->fetch()) { $name = htmlspecialchars($row['テーブル名']); $price = htmlspecialchars($row['price']); echo "<tr><td>$name</td><td>$price 円</td></tr>"; 上記のデバックに手こずっております。 自分の知りたいところはカタカナ、漢字の使われているところが正しいのか知りたいです。 またもっと楽な方法があれば教えて頂きたいです。 馬鹿でスミマセンがよろしくお願いします。

    • ベストアンサー
    • MySQL
  • PHP・MySQLテーブルを追加しても崩れない方法

    PHPとMySQLを利用して、プログラムを組んでいる場合、 急に新たなテーブルがほしくなった場合に、 ただ単純にPHPmyadminでテーブルを先頭などに追加すると、 プログラムが狂ってしまうと聞きました。 将来的にテーブルを追加しても崩れない呼び出し方は、 どのような記述になるのでしょうか? だいぶ大雑把な質問内容で、すみません; 具体的な例をお聞きしたいです。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • mysqlでのテーブルについて

    現在PHP+MYSQLでBBSを作っています。 サイトの構成上、複数のBBSを設置しているのですが、 BBS一つに対してLOGテーブルを一つ作っています。 テーブル数が非常に多くなり不安になっています。 (一つのトピックに対して一つテーブルが生成されます) データーベースを構築するのは初めてで戸惑っています。 MYSQLでテーブルが膨大になるのは問題があるのでしょうか? 一つのテーブルにレコードを格納していったほうがいいのでしょうか? 又、テーブル数に適正な数、上限などもあったりするのでしょうか? ご存知の方がいらしゃいましたらご教授お願い致します。

    • 締切済み
    • PHP
  • PHP : pdo_mysql.so

    大変お世話になっております。 今回、PHPでバッチを作成しました。 当然、pdo_mysql.so をドライバーとし、コネクションを生成しようとしておりますが、 「Error:could not find driver」 とエラーが出てしまいます。 そこで、php.ini に設定を行いました。 extension_dir に、実態の配置されているpath extension=pdo.so extension=pdo_mysql.so の設定を行っております。 phpinfo() には、pdo_mysql が表示されています。 また、同一サーバーにZendFramework を利用したアプリケーションが存在しておりますが、 そちらではDBへのアクセスが可能であります。 上記のような現象に思い当たる部分がある方は、 是非ご教示ください。 お手数おかけいたしますが、よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • mysqlについてサンプルなど教えてもらえませんか

    すいません。今phpなどを使いウェブサイトを作っているのですが、データベースがどうしても 必要となり、参考サイトなどを見ながら作りました。 ほとんどできたのですが、最後に一部データベースの関数などでわからない事があり困っています。 (正直私はプログラムはphp程度が少し分かる程度で、データベースも単純な使い方しかしない 予定なので参考サイトをざっと見ただけでmysqlの事がほとんど分かりません) ググってそれらしい物を探してはいるのですが、私がやりたい事はデータベースから 件数を取りたいだけです。 取った件数をphpで表示したいのですが、何時間やっても良くわかりません。 申し訳ないんですが取り出した後その件数をphpのechoで表示するまでをサンプルとして書いてもらえませんか?(可能であれば「ここでこのような処理が行われている」とコメントがもらえると助かります) データベース関係はphpと違って初心者用のサイトなども無く、書いてある事がほとんど分かりません。 (ここでSELECT COUNT(*)を使うと教えてもらったのですが、SELECT COUNT(*)でググっても サンプルなども出てきません) $pdo = new PDO("mysql:dbname=aaa", "root"); $pdo->query("set names utf8;"); // ------------------------------------------------ $sql = $pdo->query("SELECT COUNT(*) FROM bbb"); $stmt = $pdo->query($sql); $stmt->execute(); $count=$stmt->rowCount(); echo $count; ----------------------------------------------- $result = mysql_query("SELECT COUNT(*) FROM bbb"); $row = mysql_fetch_assoc( $result ); echo $row;

    • ベストアンサー
    • MySQL