0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Supabase新規プロジェクト作成備忘録

0
Posted at

2026年4月時点

プロジェクトの作成

new project
image.png

セキュリティのチェックはRLSオンを推奨

RLSとは?

「この人はこのデータ見ていい?」
というチェックをDB側で判定するセキュリティ機能。

・ログインした本人の日記だけ読める
・管理者だけ削除できる
・全員閲覧できるけど書き込み禁止
みたいな制限をDB自身が守ってくれる

image.png

→Create new project
プロジェクト作成には5分ほど時間がかかるかも。

STATUSがHealthyになったら正常起動。
image.png

Status 意味
Healthy 正常稼働
Provisioning 作成中・準備中
Paused スリープ中
Restoring 復旧中
Updating アップデート中
Unhealthy 異常状態
Offline / Down 停止中

テーブルを作る

Table Editor
image.png
image.png

Create a table

image.png

image.png

外部キー設定
Action if referenced row is updated
 →Cascade

親IDが変わったら、子側も追従。
ただしUUIDのidは普通変えないので、お守りのようなもの。

Action if referenced row is removed
→Cascade

親IDを削除したら、その子側も一緒に削除。

image.png

データ投入

・CSVでインポートできる
・created_atをテーブルに持たせている場合、CSV上には記載しない
・idをtext型で持たせる場合は並び順に注意。
 1,2,...ではOrderByした時に1,10...といった並びになってしまうので
 001,002...などでレコードを登録する。
・テーブルを一括削除したい場合、親子テーブルの関係で削除できないことがあるので
 以下SQLを流す。

truncate table parents;

truncate table children, parents restart identity;

画面との連携方法

前提として、
・Supabaseアカウント作成済み
・プロジェクト作成済み
・テーブル/データ作成済み

次にNext.jsからSupabaseのデータを取得する方法

1.以下をコマンドプロンプトからインストール
npm install @supabase/supabase-js

2. Next.jsに環境変数を書く

プロジェクト直下に .env.local を作る。

NEXT_PUBLIC_SUPABASE_URL=自分のProject URL
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY=自分の public key

image.png

ヘッダーのConnect>一番下の方のConnect your app>2 Add files
コピペ用の記載が載っています。
image.png

.env.local はGitにあげない!

3. Supabaseライブラリを入れる

 npm install @supabase/supabase-js 

4. Supabase clientを作る

lib/supabase.ts
import { createClient } from "@supabase/supabase-js";

export const supabase = createClient(
  process.env.NEXT_PUBLIC_SUPABASE_URL!,
  process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY!
);

5. データ取得関数を作る
lib/repositories/characters.ts
などの定義ファイルを作成してデータ取得関数を作成する

6. 画面で取得して表示する
7. RLS確認

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?