Check for empty string in postgres

Hi. First post. πŸ™‚ Started looking into migrating our project to drizzle today and am loving it so far.

I want to add a not-empty check and from what I gathered from the docs and this example https://github.com/drizzle-team/drizzle-orm/blob/b003e523c637c81e2c522003db03d3d9bd98b723/drizzle-orm/type-tests/pg/tables.ts#L76 (which is the only one I could find) this code should work:

import { boolean, check, pgTable, uniqueIndex, varchar } from 'drizzle-orm/pg-core'
import { uuidPk } from './helpers'
import { sql } from 'drizzle-orm'

export const users = pgTable(
  'auth_user',
  {
    id: uuidPk,
    name: varchar('name').notNull(),
    password: varchar('password').notNull(),
    isAdmin: boolean('is_admin').notNull().default(false),
  },
  (users) => ({
    nameIdx: uniqueIndex('auth_user_name_idx').on(users.name),
    notEmptyName: check('notEmptyName', sql`${users.name} <> ''`),
  })
)


But it doesn't :/ the index works, but the check does not. There is no SQL generated for the migration but to be sure I also tested it in runtime after migrating but no luck. Any advice?
Was this page helpful?