Introduction
We insert data to save new information. We query data to find and use saved information.
We insert data to save new information. We query data to find and use saved information.
const { data, error } = await supabase
.from('table_name')
.insert([{ column1: 'value1', column2: 'value2' }])
const { data, error } = await supabase
.from('table_name')
.select('*')
.eq('column1', 'value1')Use insert to add new rows to a table.
Use select to get rows. Use filters like eq to find specific rows.
await supabase .from('users') .insert([{ name: 'Alice', age: 30 }])
await supabase .from('users') .select('*')
await supabase .from('users') .select('*') .eq('name', 'Alice')
This program inserts a user named Bob, then queries all users named Bob and prints both results.
import { createClient } from '@supabase/supabase-js' const supabaseUrl = 'https://xyzcompany.supabase.co' const supabaseKey = 'public-anonymous-key' const supabase = createClient(supabaseUrl, supabaseKey) async function run() { // Insert a new user const { data: insertData, error: insertError } = await supabase .from('users') .insert([{ name: 'Bob', age: 25 }]) if (insertError) { console.error('Insert error:', insertError.message) return } console.log('Inserted data:', insertData) // Query users named Bob const { data: queryData, error: queryError } = await supabase .from('users') .select('*') .eq('name', 'Bob') if (queryError) { console.error('Query error:', queryError.message) return } console.log('Queried data:', queryData) } run()
Always check for errors after inserting or querying data.
Insert data as an array of objects, even if inserting one row.
Use filters like eq, lt, gt to narrow queries.
Insert data to add new rows to your database.
Query data to find and use saved information.
Check for errors to handle problems early.
insert() method do in Supabase?insert()insert() method is used to add new data entries (rows) into a database table.delete() remove data, update() changes existing data, and select() retrieves data. Only insert() adds new rows.supabase.from('table').insert(data) to add data.supabase.from('users').insert({name: 'Alice'}). Others misuse method order or names.const { data, error } = await supabase
.from('products')
.select('*')
.eq('category', 'books');
console.log(data);select('*') fetches all columns, and .eq('category', 'books') filters rows where category equals 'books'.const { data, error } = await supabase
.from('orders')
.insert(['item', 'quantity']);insert() method requires an array of objects representing rows, e.g., [{item: 'apple', quantity: 2}]. Passing an array of strings is invalid.from() before insert() is correct. Awaiting insert() is valid. .select() after insert() is optional for returning data.insert() with an array of objects: [{name: 'Bob', age: 25}, {name: 'Eve', age: 22}]. A single malformed object is invalid.supabase.from('users').select('*').gt('age', 20). Querying before insert misses new data; chaining select().gt() after insert() is invalid.Pass the test and this pattern moves unknown