无法更新 Supabase table,因为它没有副本标识
Cannot update Supabase table because it does not have a replica identity
当我尝试使用 Supabase 进行第一次 table 更新时,代码如下:
await db.from("welcome").update({visit_count: newCount});
出现错误:
{
"hint":"To enable updating the table, set REPLICA IDENTITY using ALTER TABLE.",
"details":null,"code":"55000",
"message":"cannot update table \"welcome\" because it does not have a replica identity and publishes updates"
}
在这种情况下,问题是我创建了没有主键的 welcome
table。
这个错误实际上与 Supabase 无关,它是一个与逻辑复制相关的 Postgres 错误:https://pgdash.io/blog/postgres-replication-gotchas.html
有几个解决方案:
- 确保你有一个主键列
- 使用
alter table
命令将一组特定的列设置为 replica identity
- 使用
alter table
命令将replica identity
设置为full
。
当我尝试使用 Supabase 进行第一次 table 更新时,代码如下:
await db.from("welcome").update({visit_count: newCount});
出现错误:
{
"hint":"To enable updating the table, set REPLICA IDENTITY using ALTER TABLE.",
"details":null,"code":"55000",
"message":"cannot update table \"welcome\" because it does not have a replica identity and publishes updates"
}
在这种情况下,问题是我创建了没有主键的 welcome
table。
这个错误实际上与 Supabase 无关,它是一个与逻辑复制相关的 Postgres 错误:https://pgdash.io/blog/postgres-replication-gotchas.html
有几个解决方案:
- 确保你有一个主键列
- 使用
alter table
命令将一组特定的列设置为replica identity
- 使用
alter table
命令将replica identity
设置为full
。