namespaces-config
Using @config you can configure the dialect and namespace. You can also specify the output file. This is still a experimental feature. They are all experimental features.
@config(#{ dialect: "sqlite" })
namespace HelloSqLite {
@table
model NSBlog {
@uuid @id id: string;
name: string;
description?: string;
}
}
@config(#{ dialect: "mysql" })
namespace HelloMySql {
@table
model MyBlog {
@uuid @id id: string;
name: string;
description?: string;
}
}
schema.ts
import { sqliteTable, uuid, text } from "drizzle-orm/sqlite-core";
import { mysqlTable, uuid, text } from "drizzle-orm/mysql-core";
export const NSBlogTable = sqliteTable("NSBlog", {
id: uuid("id").defaultRandom().primaryKey(),
name: text("name").notNull(),
description: text("description"),
});
export type NSBlog = typeof NSBlogTable.$inferSelect; // return type when queried
export const MyBlogTable = mysqlTable("MyBlog", {
id: uuid("id").defaultRandom().primaryKey(),
name: text("name").notNull(),
description: text("description"),
});
export type MyBlog = typeof MyBlogTable.$inferSelect; // return type when queried