🐘
Supabase id -> 自動連番idに変更
Tips💡
Supabaseでテーブルに自動連番のidの設定をし忘れた(−_−;)
[error code]
例外が発生しました PostgrestException (PostgrestException(message: null value in column "id" of relation "dev_relationships" violates not-null constraint, code: 23502, details: Failing row contains (null, 1, 1, null)., hint: null))
エラーを解決しなくてはデータを追加できない💦
ALTER TABLE
を実行して、テーブル定義を変更する。
[Example]
CREATE SEQUENCE dev_relationships_id_seq;
ALTER TABLE dev_relationships
ALTER COLUMN id SET DEFAULT nextval('dev_relationships_id_seq');
ALTER SEQUENCE dev_relationships_id_seq OWNED BY dev_relationships.id;
できた\(^^)/
このクエリは、まずdev_relationships_id_seqという名前の新しいシーケンスを作成します。次に、dev_relationshipsテーブルのidカラムのデフォルト値を、このシーケンスの次の値に設定します。最後に、シーケンスをdev_relationshipsテーブルのidカラムに所有させます。これにより、テーブルが削除されるときにシーケンスも自動的に削除されます。
ただし、この操作は既存のテーブルに対して行うと、既存のデータに影響を及ぼす可能性があります。そのため、この操作を行う前には必ずデータのバックアップを取るなど、適切な対策を行ってください。
先ほどは、データの挿入ができなかったのですが、問題なくおこなえました。fcm_tokenというカラムは、nullのデータが入ったらクラッシュするので、FCM Tokenを保存しています。
Discussion