DrizzleORM v0.30.5 发布
Mar 27, 2024

新功能

PostgreSQL、MySQL 和 SQLite 的 $onUpdate 功能

为列添加了动态更新值。 在更新行时将调用该函数,并且如果未提供列值,则将使用返回的值作为列值。 如果未提供 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
Become a Gold Sponsor