Back to Drizzle Orm

ConnectSingleStore

src/mdx/get-started/singlestore/ConnectSingleStore.mdx

latest1.4 KB
Original Source

import Callout from '@mdx/Callout.astro'; import CodeTabs from "@mdx/CodeTabs.astro";

Create a index.ts file in the src/db directory and initialize the connection:

<CodeTabs items={['mysql2', 'mysql2 with config', 'your mysql2 driver']}>

typescript
import 'dotenv/config';
import { drizzle } from "drizzle-orm/singlestore";

const db = drizzle(process.env.DATABASE_URL);
typescript
import 'dotenv/config';
import { drizzle } from "drizzle-orm/singlestore";

// You can specify any property from the mysql2 connection options
const db = drizzle({ connection: { uri: process.env.DATABASE_URL }});
ts
import 'dotenv/config';
import { drizzle } from "drizzle-orm/singlestore";
import mysql from "mysql2/promise";
  
const poolConnection = mysql.createPool({
  host: "host",
  user: "user",
  database: "database",
});
const db = drizzle({ client: poolConnection });

// or if you need client connection
async function main() {
  const connection = await mysql.createConnection({
    host: "host",
    user: "user",
    database: "database",
  });
  const db = drizzle({ client: connection });
}
main();
</CodeTabs> <Callout type="warning" emoji="⚙️"> 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. </Callout>