Delete data: delete()
Perform a DELETE on the table or view.
By default, deleted rows are not returned. To return it, chain the call
with .select() after filters.
1const { error } = await supabase
2 .from('countries')
3 .delete()
4 .eq('id', 1)
Parameters#
optionsrequired
objectNamed parameters
countoptional
|exact|plannedestimatedCount algorithm to use to count deleted rows.
"exact": Exact but slow count algorithm. Performs aCOUNT(*)under the hood."planned": Approximated but fast count algorithm. Uses the Postgres statistics under the hood."estimated": Uses exact count for low numbers and planned count for high numbers.
Properties
Notes#
delete()should always be combined with filters to target the item(s) you wish to delete.- If you use
delete()with filters and you have RLS enabled, only rows visible throughSELECTpolicies are deleted. Note that by default no rows are visible, so you need at least oneSELECT/ALLpolicy that makes the rows visible.
Examples#
Delete records#
1create table
2 countries (id int8 primary key, name text);
3
4insert into
5 countries (id, name)
6values
7 (1, 'Spain');
1const { data, error } = await supabase 2 .from('countries') 3 .select()