새 행을 만들기 위해 Supabase에서 트리거합니다.
🎯목표
어느 날 귀하의 사이트에 로그인하여 등록했습니다. 귀하의 웹사이트에서는 Facebook처럼 내 세부 정보를 추가할 수 있습니다. 하지만 문제는 supabase의 auth.users 테이블에 세부 정보를 추가할 수 없다는 것입니다.
안심하다! Postgres(supabase에서 제공하는 데이터베이스)에서 스키마와 테이블이 무엇인지 알려드리겠습니다.
In database, there are many schemas **eg(auth, public or more). Then schemas has **tables **eg(posts, authors, comments) then tables has **rows associated with columns eg(name, created_at)
간단한 다이어그램에서 👇
이 경우 supabase에서 사용자의 세부 정보를 가져올 수 있도록 공용 테이블에 행을 만들어야 합니다.
🤓진정해!!! 구현이 간단합니다.
먼저 프로젝트에서 테이블의 프로필을 설정해 보겠습니다.
public.profile.id를 auth.users.id에 연결해야 한다는 점을 기억하세요. 여기서 public과 auth는 스키마이고 profile과 users는 테이블입니다.
그런 다음 데이터베이스 설정에서 기능을 수행해야 합니다. 👇를 클릭하시면 이동하실 수 있습니다.
이제 오른쪽 상단에서 새 함수 만들기를 클릭합니다.
코드👇
begin
insert into public.profiles(id, email)
values(new.id, new.email);
return new;
end;
이제 데이터베이스 설정에서 **트리거**로 이동하겠습니다.
그런 다음 확인을 클릭하십시오.
이제 확인해 봅시다.
팔. 이제 프로필 테이블에 사용자가 있습니다. 하지만 버그가 있습니다.
인증 테이블에서 사용자를 삭제하려고 할 때. 우리는 받는다
그래서 먼저 프로필 테이블로 이동하여 삭제하십시오 ⛔.
그런 다음 SQL 편집기로 이동하십시오.
암호:
create table public.profiles(
id uuid primary key references auth.users(id) on update cascade on delete cascade,
email text not null
);
이제 인증 테이블에서 사용자를 삭제할 수 있으며
프로필 테이블에서 삭제되었습니다.
힌디어를 이해하는 사람들을 위해:
%[ ]
Reference
이 문제에 관하여(새 행을 만들기 위해 Supabase에서 트리거합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/nextdev/triggers-in-supabase-for-making-new-rows-2lnh텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)