[PHP-users 23345]Re: データベース内のすべてのテーブルについてあるsql文を実行したい

Tatsuo Ishii t-ishii @ sra.co.jp
2004年 9月 19日 (日) 09:30:20 JST


石井です.

> 『test1』に3つのテーブルがあるとします。
>              tablename
>           …………………
>             syoseki_18 
>             syoseki_257
>             syoseki_3457

[略]

> しかしそれにしてもスクリプトがごちゃごちゃして大変です。
> 『データベース内のすべてのテーブルについてある sql 文を
> 実行したい』ということは、まれではなく行う操作かと思いま

そんなことは普通めったにしません.というか,そもそも,同じ構造を持った
テーブルを大量に用意するという時点で理解に苦しみます:-)テーブル設計を
見直すことをおすすめします.

すでに誰かがそういう風に作っちゃったんでしょうがない,とかいうことであ
れば,VIEWを使って見掛け上一つのテーブルに見えるようにすれば,SELECT一
発で検索できるようになります.

CREATE VIEW syoseki AS SELECT * FROM syoseki_18 UNION ALL SELECT *
FROM syoseki_257 UNION ALL ...;

後は,継承を使う手もあります.
--
Tatsuo Ishii


PHP-users メーリングリストの案内