0

各タイプのデータが一意のアートワークタイプのデータベーススキーマはどのように処理しますか?

私はアートワークソリューションを開発しようとしていますが、これをデータベーススキーマにコード化する方法に関するカテゴリタイプの問題に取り組んでいます。私はちょうど親と外来のキーの概念を理解し始めました。

アートワークは、写真、楽譜、絵画、彫刻などのカテゴリタイプに属します。私がやったことは、アートワーク用のテーブルと、カテゴリーのタイプのテーブルと、主要なアートワークテーブルへの外部キーのリンクです。写真に写真フォーマットや撮影日などの固有の情報がある場合はどうなりますか?これを正規化するために、写真の情報を格納するために別のテーブルが必要ですか?

ダイアグラムスキーマの変換方法ダイアグラムについては、添付のartwork.jpgを参照してください。アートワークの表をカテゴリにリンクするだけでなく、写真の写真形式、作曲者名、楽譜の長さ(分)などの固有の情報を表示するために、各カテゴリタイプには別のテーブルがあります。これを見せてください。ありがとうございました。


 

 
public function up() 
 
    { 
 
     Schema::create('artwork', function (Blueprint $table) { 
 

 
      
 

 
      $table->increments('id'); 
 
      $table->string('title'); 
 

 
      //this is foreign key to the categories table 
 
      $table->integer('category_id')->nullable()->unsigned(); 
 
      $table->foreign('category_id')->references('id') 
 
        ->on('categories') 
 
        ->onDelete('cascade'); 
 
      
 
      $table->string('author'); 
 
      $table->string('groupcountry'); 
 
      $table->string('year'); 
 
      $table->string('description'); 
 
      
 
     }); 
 
    } 
 

 
============================= 
 

 
class CreateCategoriesTable extends Migration 
 
{ 
 
    /** 
 
    * Run the migrations. 
 
    * 
 
    * @return void 
 
    */ 
 
    public function up() 
 
    { 
 
     Schema::create('categories', function (Blueprint $table) { 
 
      $table->increments('id'); 
 
      $table->string('category_name'); 
 
      $table->string('category_description'); 
 
      
 
     }); 
 
    }

答えて

1

あなただけの主キーと外部キーの概念を理解し始めている場合は、あなただけのリレーショナルデータベースの設計で始めることがあります。あなたはそれをたくさん学ぶ前に簡単な事柄から始めることができますが、学ぶことはかなりあります。

HAS-A関係とIS-A関係の違いは、学習したい概念の1つです。 HAS-Aの関係の例は、アーティストとアートワークの関係(あなたの質問に無関係)です。すべてのチュートリアルにはHAS-Aの関係があり、データベース設計のスピードアップにつながります。

IS-A関係はより微妙であり、データベースチュートリアルではこれを明確に示さないことがよくあります。 IS-A関係の例は、写真とアートワークの関係です。写真はアートワークです。これは通常、1対1の関係であり、通常はクラスサブクラス(型サブタイプ)の状況です。それはここの場合です。写真、楽譜、絵画、彫刻はすべてアートワークのサブタイプです。

+0

リソースに私を指しているため、あなたにウォルターありがとう:私はあなたが情報に目を通すと、これら3つのタグの下でグループ化された質問が示唆具体的な手法については、

BraveHeart

関連する問題