Supabase 提供了一个强大的框架来管理数据库功能,这些功能本质上是 PostgreSQL 存储过程。以下是 Supabase 中提供的关键功能和特性的简要概述:
函数类型
1.数据库功能:
这些函数是使用 SQL 创建的,可以在数据库中直接调用。
简单函数的示例:
sql
CREATE FUNCTION hello_world() RETURNS text AS $$
BEGIN
RETURN 'hello world';
END;
$$ LANGUAGE plpgsql;
可以通过 Supabase 仪表板或 SQL 编辑器创建或替换函数
1
5
。
2.RPC(远程过程调用)函数:
这些允许您从客户端应用程序调用数据库函数。
对于执行需要多个步骤的复杂查询或操作很有用
1
5
。
3.边缘功能:
这些功能基于 Deno 构建,运行更接近用户,从而提供更低的延迟。
适用于 API 集成或提供静态内容等任务
3
。
主要特点
API 密钥:
Supabase 生成两种类型的密钥:和。密钥用于具有有限权限的公共访问,而 密钥具有用于管理任务的提升权限anonservice_roleanonservice_role
2
。
安全和权限:
可以控制数据库函数的执行权限,只允许特定角色执行它们。这对于维护应用程序的安全性至关重要。
5
。
触发器:
可以将函数与触发器链接起来,以自动执行响应数据库中某些事件(例如,插入新用户)的操作
1
。
与 Auth 集成:
函数可以与 Supabase Auth 交互,无缝管理用户会话和角色,允许根据身份验证状态进行动态访问控制
2
4
。
使用场景
创建用户配置文件:
使用函数和触发器的组合在用户注册时自动创建或更新用户个人资料记录
1
。
数据分析:
使用密钥执行后端数据分析,不受行级安全性 (RLS) 的限制service_role
2
。
总而言之,Supabase 的功能能力使开发人员能够利用 PostgreSQL 强大的功能和现代无服务器架构来创建高效、安全且可扩展的应用程序。








网友评论