Home / Class/ PgAlterTableAlterColumnSetNotNullConvertor Class — drizzle-orm Architecture

PgAlterTableAlterColumnSetNotNullConvertor Class — drizzle-orm Architecture

Architecture documentation for the PgAlterTableAlterColumnSetNotNullConvertor class in sqlgenerator.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  3efeb839_b9eb_f0b7_7fe7_ca7a6d95595e["PgAlterTableAlterColumnSetNotNullConvertor"]
  fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"]
  3efeb839_b9eb_f0b7_7fe7_ca7a6d95595e -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939
  21217df3_b6c5_d6cc_681a_697c17d7651d["can()"]
  3efeb839_b9eb_f0b7_7fe7_ca7a6d95595e -->|method| 21217df3_b6c5_d6cc_681a_697c17d7651d
  0e467b11_ba89_5e8b_1abd_dfa37ce079d7["convert()"]
  3efeb839_b9eb_f0b7_7fe7_ca7a6d95595e -->|method| 0e467b11_ba89_5e8b_1abd_dfa37ce079d7

Relationship Graph

Source Code

drizzle-kit/src/sqlgenerator.ts lines 3294–3311

class PgAlterTableAlterColumnSetNotNullConvertor extends Convertor {
	can(statement: JsonStatement, dialect: Dialect): boolean {
		return (
			statement.type === 'alter_table_alter_column_set_notnull'
			&& dialect === 'postgresql'
		);
	}

	convert(statement: JsonAlterColumnSetNotNullStatement) {
		const { tableName, columnName } = statement;

		const tableNameWithSchema = statement.schema
			? `"${statement.schema}"."${statement.tableName}"`
			: `"${statement.tableName}"`;

		return `ALTER TABLE ${tableNameWithSchema} ALTER COLUMN "${columnName}" SET NOT NULL;`;
	}
}

Domain

Frequently Asked Questions

What is the PgAlterTableAlterColumnSetNotNullConvertor class?
PgAlterTableAlterColumnSetNotNullConvertor is a class in the drizzle-orm codebase, defined in drizzle-kit/src/sqlgenerator.ts.
Where is PgAlterTableAlterColumnSetNotNullConvertor defined?
PgAlterTableAlterColumnSetNotNullConvertor is defined in drizzle-kit/src/sqlgenerator.ts at line 3294.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free