For the built in migrate
function with DDL migrations we and drivers strongly encourage you to use single client
connection.
For querying purposes feel free to use either client
or pool
based on your business demands.
To use Drizzle with a SingleStore database, you should use the mysql2
driver
Drizzle ORM natively supports mysql2
with drizzle-orm/singlestore
package.
npm i drizzle-orm mysql2
npm i -D drizzle-kit
import { drizzle } from "drizzle-orm/singlestore";
const db = drizzle(process.env.DATABASE_URL);
const response = await db.select().from(...)
If you need to provide your existing driver:
import { drizzle } from "drizzle-orm/singlestore";
import mysql from "mysql2/promise";
const connection = await mysql.createConnection({
host: "host",
user: "user",
database: "database",
...
});
const db = drizzle({ client: connection });
For the built in migrate
function with DDL migrations we and drivers strongly encourage you to use single client
connection.
For querying purposes feel free to use either client
or pool
based on your business demands.
Currently, the SingleStore dialect has a set of limitations and features that do not work on the SingleStore database side:
ORDER BY
and LIMIT
cannot be chained together.INTERSECT ALL
and EXCEPT ALL
operations are not supported by SingleStore.isolationLevel
.DATE
, TIMESTAMP
, and DATETIME
is not supported.