sql >> データベース >  >> RDS >> Mysql

MySQLの1対多の関係-モデルを構築する方法は?

    create table Area(id int primary key auto_increment, name varchar(100));
    
    create table Map(id int primary key auto_increment, 
                     area_id int not null,
                     name varchar(100),
                     foreign key (area_id) references area(id));
    

    SqlFiddle

    Map Areaが必要です 、area_idとして nullではありません(Foreign keyです Area

    ただし、エリアごとに「少なくとも1つのマップ」を作成することはできません(望ましくありません)。

    ある日、Areaを作成する必要があります 。また、Mapはありません 現時点で。または、「定期的な」チェックを行って、マップのないエリアを確認します。

    Areaを削除することをお勧めします 、関連するMapがなくなった場合 、Mapを削除した場合 。



    1. Microsoft AccessレポートをPDFに変換する方法(3つの方法)

    2. エラー2002(HY000):ソケット'/tmp/mysql.sock'を介してローカルMySQLサーバーに接続できません

    3. Oracle PL / SQLのhtmlエンティティに<、>、および&文字をエスケープする方法

    4. SQLクエリ、列がnullでない場合にのみ選択し、それ以外の場合は選択しない