私は、mysql & phpでライブラリ管理システムを構築するクラスプロジェクトを持っています。レコードを挿入する良い方法はありますか?
書籍、オーディオ、ビデオの3つのアイテムがあります。それぞれには異なる属性と1つの項目IDがあります。
TABLES:
ITEM(item_id A.INCREMENT, TYPE)
BOOK(b_id,name,author etc.)
VIDEO(v_id, ETC.)
AUDIO(a_id, ETC.)
はしかし、私は特定のテーブルや項目テーブルの両方に項目を追加するために3つのSQL文を使用する必要があります。これには良い方法がありますか?私は実際にはITEM
クラスを必要としません、私はそれをより一般的に使用します。それがなければそれは悪いですか?
これは使い方です。ところで
$sql="INSERT INTO ITEM values(NULL,'BOOK') ";
$query = $this->db->query($sql);
$sql="SELECT ID as id FROM ITEM WHERE ID=last_insert_id()";
$query=$this->db->query($sql)->row_array();
$name = $book_name;
$sql = "INSERT INTO BOOKS values ('".$query['id']."','".$name."','".$author."','".$title."','".$year."','".$price."','AVAIBLE',NOW(),'0')";
$query = $this->db->query($sql);
これは現在の問題を特に修正するものではありませんが、ブック、オーディオ、ビデオがすべて1つのテーブルに表示されるようにテーブルの順序を並べ替えると、表示される情報の種類を区別する列があります。 (Wordpressのようなものがカスタムの投稿の種類と同じです) – Jhecht