diff --git a/docs/databases/duckdb.mdx b/docs/databases/duckdb.mdx new file mode 100644 index 000000000..f8f4eab99 --- /dev/null +++ b/docs/databases/duckdb.mdx @@ -0,0 +1,36 @@ +--- +title: DuckDB +sidebar_position: 1 +--- + +# Sequelize for DuckDB + +To use Sequelize with [DuckDB](https://duckdb.org/docs/), you need to install the `@sequelize/duckdb` dialect package: + +```bash npm2yarn +npm i @sequelize/duckdb +``` + +Then use the `DuckDbDialect` class as the dialect option in the Sequelize constructor: + +```ts +import { Sequelize } from '@sequelize/core'; +import { DuckDbDialect } from '@sequelize/duckdb'; + +const sequelize = new Sequelize({ + dialect: DuckDbDialect, + database: '/path/to/local/file', +}); +``` + +To connect to [MotherDuck](https://motherduck.com/docs/getting-started/), provide your database path in the `database` field: + +```ts +import { Sequelize } from '@sequelize/core'; +import { DuckDbDialect } from '@sequelize/duckdb'; + +const sequelize = new Sequelize({ + dialect: DuckDbDialect, + database: 'md:my_db', +}); +``` diff --git a/src/utils/dialects.ts b/src/utils/dialects.ts index dc33896aa..8f09ac47d 100644 --- a/src/utils/dialects.ts +++ b/src/utils/dialects.ts @@ -7,4 +7,5 @@ export const SUPPORTED_DIALECTS = new Set([ 'Snowflake', 'db2', 'ibmi', + 'duckdb', ]);