MemFire Cloud,号称国内版的Supabase,不用安装部署,可以直接使用后端即服务,可作为PostgresSQL云数据库来使用。在本篇文章中,我们来介绍一下如何使用调用Postgres数据库函数。MemFire Cloud提供免费的套餐服务来直接使用体验;
1.创建应用
登录MemFire Cloud,在控制面板中创建一个新项目,如下图所示:
应用创建成功后,即可获得一个云端的Postgres数据库。
2.创建数据表
在SQL编辑器中创建一张数据表,包含编号、姓名字段,并插入两条数据。
CREATE TABLE "public"."tb_user" (
"f_id" SERIAL,
"f_name" VARCHAR NOT NULL,
CONSTRAINT "tb_user_pkey" PRIMARY KEY ("f_id")
);
INSERT INTO "public"."tb_user" ("f_id", "f_name") VALUES ('1', '李四');
INSERT INTO "public"."tb_user" ("f_id", "f_name") VALUES ('2', '张三');
INSERT INTO "public"."tb_user" ("f_id", "f_name") VALUES ('3', '张三');
执行完上述命令后,可以在表编辑器中查看结果。
3.创建函数
在SQL编辑器中创建一个查询函数,可以查询指定用户的信息,获取所有ID或者名称满足条件的用户。关于如何编写函数,可以参考:如何快速编写Postgres数据库函数。
CREATE OR REPLACE FUNCTION get_users(num1 text, num2 text)
RETURNS TABLE (id INT, name VARCHAR)
AS $$
DECLARE
value INTEGER;
BEGIN
value := CAST(num1 AS INTEGER);
RETURN QUERY
SELECT f_id, f_name
FROM tb_user
WHERE f_id = value OR f_name = num2;
END;
$$ LANGUAGE plpgsql;
执行完上述命令后,可以在表编辑器中查看结果。
在SQL编辑器中调用该函数,select * from get_users('2','张三')
,查询结果如下:
4.使用rpc来调用函数
使用python SDK来编辑代码,通过rpc接口来访问数据库的函数。
from supabase import create_client, Client
supabase: Client = create_client("url",
"anon_key")
result = supabase.rpc("get_users", {"num1": 1, "num2": "bbbb"}).execute()
print(result)
运行即可返回结果:
如果感兴趣的小伙伴们,赶紧来操作体验一下。