[PHP-users 32285] Re: 【質問】複数のテーブルにinsertする方法
Lee,Hongchun
embargo1 @ sfc.keio.ac.jp
2007年 6月 7日 (木) 10:12:24 JST
返信ありがとうございました。助かりました。
> 河本です。
>
> 恐らく本などに載っている基本のinsert文は
> 1つのテーブルに対しての処理なので、
> 複数のテーブルにinsertしたければ、
> そのテーブル数だけinsertするのが最も簡単かと思います。
>
> multi_queryを利用したり、SQLにマルチテーブル・インサート等を使えば、
> ソースはもっとシンプルになるかとは思いますが。
> Google等で、「複数 テーブル insert」等のキーワードで検索をかければ、
> 調べられた本よりは十分な結果が得られるかと・・・・
>
> #素人と書く前に、せめて環境を書いて下さい。
> OS・PHP・DBの種類とバージョンぐらいは・・・。
ー>windows server 2000
php ver.5.0
DB->postgresql 8.01
これまで、ひとつのテーブルですべてのデータをinsertしましたが、リレーショ
ナルをつけるためにテーブルの正規化を行ったので、複数のテーブルにinsertす
る必要が出来てきてました。
HPからpostされたデータのテーブル(例えば)A,B,C,Dにinsertしないといけ
なくなりました。
SQLコマンドでは別々の入力は可能ですが、1回で同時に行うのはできないで
すね。PHPを利用して処理しようとしております。
->現在のSQL文
$sql = "insert into tmain values('$id', '$entername','$date',
'$newspaper', '$edition', '$page', '$title', '$articletype', '$issue',
'$content','$evaluation', '$who', '$syozoku', '$inputtime')";
}
新しいSQL文
$sql = "insert all
into sinbun values ('$id', '$entername','$date','$newspaper')
into newspaper values('$id', '$date','$newspaper', '$edition', '$page')
into article values('$title', '$articletype')
into issue values('$issue','$content')
into hyouka values('$evaluation', '$who', '$syozoku', '$inputtime')";
}
以上のように変更しよとしておりますが、プルグラムとしては問題ないでしょう
か。
また、updateの場合も同じ文法を使うことも可能ですか。
再度よろしくお願いします。
>
> ┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏┏
> ┏━━━┓ Akihiro KAWAMOTO
> ┃\_/┃ Mail: kawamoto @ med.kawasaki-m.ac.jp
> ┗━━━┛ URL : http://www.kawasaki-m.ac.jp
> ┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌┌
> _______________________________________________
> PHP-users mailing list PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
--
Lee,Hongchun <embargo1 @ sfc.keio.ac.jp>
PHP-users メーリングリストの案内