mirror of
https://github.com/supabase/supabase.git
synced 2026-07-02 18:34:44 +08:00
49 lines
1.1 KiB
Plaintext
49 lines
1.1 KiB
Plaintext
---
|
|
id: insert
|
|
title: 'Create data: insert()'
|
|
slug: /insert
|
|
custom_edit_url: https://github.com/supabase/supabase/edit/master/spec/supabase_dart_v1_legacy.yml
|
|
---
|
|
|
|
import Tabs from '@theme/Tabs'
|
|
import TabItem from '@theme/TabItem'
|
|
|
|
Performs an INSERT into the table.
|
|
|
|
```dart
|
|
final res = await supabase
|
|
.from('cities')
|
|
.insert([
|
|
{'name': 'The Shire', 'country_id': 554}
|
|
]).execute();
|
|
```
|
|
|
|
## Notes
|
|
|
|
- By default, every time you run `insert()`, the client library will make a `select` to return the full record.
|
|
This is convenient, but it can also cause problems if your Policies are not configured to allow the `select` operation.
|
|
If you are using Row Level Security and you are encountering problems, try setting the `returning` param to `minimal`.
|
|
|
|
## Examples
|
|
|
|
### Create a record
|
|
|
|
```dart
|
|
final res = await supabase
|
|
.from('cities')
|
|
.insert([
|
|
{'name': 'The Shire', 'country_id': 554}
|
|
]).execute();
|
|
```
|
|
|
|
### Bulk create
|
|
|
|
```dart
|
|
final res = await supabase
|
|
.from('cities')
|
|
.insert([
|
|
{'name': 'The Shire', 'country_id': 554},
|
|
{'name': 'Rohan', 'country_id': 555},
|
|
]).execute();
|
|
```
|