pg schema
pg、mysql、sqlite 需要使用不同的“方言”
ts
import { pgTable, integer } from "drizzle-orm/pg-core";
export const users = pgTable("users", {
id: integer(),
first_name: varchar(),
});schema
https://drizzle.zhcndoc.com/docs/sql-schema-declaration#模式
提示
注意,这里的 schema 是 pg 的 schema,相当于命名空间,不是 drizzle 的 schema。
ts
import { integer, pgSchema } from "drizzle-orm/pg-core";
export const customSchema = pgSchema("custom");
export const users = customSchema.table("users", {
id: integer(),
});复用
ts
// columns.helpers.ts
const timestamps = {
updated_at: timestamp(),
created_at: timestamp().defaultNow().notNull(),
deleted_at: timestamp(),
};ts
// users.sql.ts
export const users = pgTable("users", {
id: integer(),
...timestamps,
});使用驼峰
ts
const db = drizzle({
connection: process.env.DATABASE_URL,
casing: "snake_case",
});