今回はcsvで正規化されたデータをデータベースにインポートしていきます。これは、
データベースの正規化(エクセルでの処理) (https://smizunolab.blogspot.com/2024/06/blog-post_18.html)
の続きです。利用するcsvファイルは、csv にも掲載してあります。この5個のファイルを利用してやっていきます。
(1) テーブルの作成
今回のテーブル構成は、メインテーブル(corporation)1個と外部テーブル(classification, agreement, content, conclusion)の4つです。以下のようにルールを決めます
・全てのテーブルは「id」を持ち、int not null, auto_increment, primary key とする
・メインテーブルでの外部キー:「外部テーブル名_id」
・外部テーブルの構成:「id」、「name」は必須、このidはメインテーブルへの参照とする
このルールでテーブルを作成すると、以下のSQL文になります。
これを用いて、データベースを作成します。今回のデータベースは「disaster」とします。
(2) データベースの用意
データベースはAWS RDSを利用します。下記を参考に、データベースに接続してください。
AWS RDSでデータベースを作成しCloudShellから接続してSQL文からデータを格納する(https://smizunolab.blogspot.com/2024/06/aws-rdscloudshellsql.html)
Cloud Shellに接続して、csvファイルを5個アップロードしておきます。
テーブルの中身を全て削除するときは、truncateでやりますが、今回外部キー制約を入れてあるので、制約を一度解除してからtruncateすればテーブルの中身は消すことができます。
各テーブルに対して、select文で確認してみましょう。
他のテーブルも内容が入っているか確認してください。(3) テーブルのリレーションを利用
corporationテーブルを表示すると、各テーブルのidで出力されます。この参照しているidを外部テーブルから値を取得するにはjoinを使います。
0 件のコメント:
コメントを投稿