sqlite-prepare
Version:
A type-safe SQL query builder for Cloudflare D1
28 lines (27 loc) • 917 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.prepare = prepare;
/// <reference types="../types/worker-types" />
const build_1 = require("./build");
/**
* Prepares a SQL query with parameterized values for D1 database
*
* @param db - The D1 database instance
* @param strings - SQL query string with placeholders or template strings array
* @param values - Values to interpolate into the query
* @returns A D1PreparedStatement object
*
* @example
* // Using a template literal
* const userId = 123;
* const stmt = prepare(db, `SELECT * FROM users WHERE id = ?`, userId);
*
* @example
* // Using template literals
* const userId = 123;
* const stmt = prepare(db, `SELECT * FROM users WHERE id = ${userId}`);
*/
function prepare(db, strings, ...values) {
const q = (0, build_1.build)(strings, ...values);
return db.prepare(q.query).bind(...(q.params));
}