DrizzleORM v0.30.5 发布
Mar 27, 2024
新功能
$onUpdate
功能适用于 PostgreSQL、MySQL 和 SQLite
向列添加动态更新值。该函数将在行更新时调用,如果未提供任何值,则返回值将用作列值。如果没有提供 default
(或 $defaultFn
)值,则在插入行时也会调用该函数,并将返回值用作列值。
注意:此值不影响
drizzle-kit
的行为,仅在drizzle-orm
运行时使用。
const usersOnUpdate = pgTable('users_on_update', {
id: serial('id').primaryKey(),
name: text('name').notNull(),
updateCounter: integer('update_counter').default(sql`1`).$onUpdateFn(() => sql`update_counter + 1`),
updatedAt: timestamp('updated_at', { mode: 'date', precision: 3 }).$onUpdate(() => new Date()),
alwaysNull: text('always_null').$type<string | null>().$onUpdate(() => null),
});
修复
- 在 smallserial 数据类型的列上插入数据并非可选操作 - #1848