Comments (3)
Hi there. Here is the documentation for transactions: https://sqlocal.dallashoffman.com/api/transaction
from sqlocal.
For reference: BEGIN/END TRANSACTION
statements offer more functionality than SQLocal.transaction()
.
Eg.
await SQLocal.exec('BEGIN TRANSACTION')
await SQLocal.exec('INSERT')
await SQLocal.exec('SELECT')
// Do something
await SQLocal.exec('UPDATE')
// throw new Error('Insert and Update will rollback');
await SQLocal.exec('END TRANSACTION')
from sqlocal.
If you'd prefer, you can open and close the transaction yourself by running it with the sql
method.
const { sql } = new SQLocal('database.sqlite3');
async function addTagToLatestNote(newTagLabel: string) {
await sql`BEGIN TRANSACTION`;
try {
const [{id: tagId}] = await sql`INSERT INTO tag (label) VALUES (${newTagLabel}) RETURNING id`;
const [{id: noteId}] = await sql`SELECT id FROM note ORDER BY createdAt desc LIMIT 1`;
await sql`INSERT INTO noteTag (tagId, noteId) VALUES (${tagId}, ${noteId})`;
} catch (err) {
await sql`ROLLBACK`;
return;
}
await sql`END`;
}
from sqlocal.
Related Issues (20)
- Node support HOT 6
- Unable to parameterize table/column name in query HOT 1
- Replace Sqlite3 with Libsql HOT 1
- sqlite3 result code 10: disk I/O error HOT 8
- Feature request: ability to control instantiation of sqlite db HOT 3
- Error during SvelteKit Server-side Rendering HOT 1
- Error opening WAL db with overwriteDatabaseFile HOT 5
- Using nested literals to construct queries passed to SQLocal.sql HOT 1
- Database maximum size HOT 3
- IndexedDB as a persistence option? HOT 2
- Sqlocal with pglite HOT 1
- Binding in multiple statements within a query HOT 4
- ERR_MODULE_NOT_FOUND when compiling for Node.js HOT 4
- How do you debug or visualize the database? HOT 2
- Concurrent reads and writes HOT 6
- How to handle adding new tables to the database when using drizzle?
- no such function: REGEXP HOT 4
- Manipulate SQLite files outside the OPFS HOT 7
- How to bundle one js file HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sqlocal.