1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import { sqliteTable, text, integer, real } from 'drizzle-orm/sqlite-core';
export const categories = sqliteTable('categories', {
id: integer('id').primaryKey({ autoIncrement: true }),
name: text('name').notNull().unique(),
order: integer('order').notNull().default(0),
});
export const groceries = sqliteTable('groceries', {
id: integer('id').primaryKey({ autoIncrement: true }),
name: text('name').notNull().unique(),
checked: integer('checked', { mode: 'boolean' }).notNull().default(false),
createdAt: text('created_at').notNull(),
categoryId: integer('category_id').references(() => categories.id, {
onDelete: 'set null',
}),
});
export const references = sqliteTable('references', {
id: integer('id').primaryKey({ autoIncrement: true }),
groceryId: integer('grocery_id')
.notNull()
.references(() => groceries.id, { onDelete: 'cascade' }),
reference: text('reference').notNull(),
price: real('price'),
unit: text('unit'),
qualityScore: integer('quality_score'),
});
|