CreateMySqlIndexConvertor Class — drizzle-orm Architecture
Architecture documentation for the CreateMySqlIndexConvertor class in sqlgenerator.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD d7aa8bdc_6355_5d86_a068_5b5077e26613["CreateMySqlIndexConvertor"] fe4174c7_3b9c_5b26_98a0_b2395ca21939["sqlgenerator.ts"] d7aa8bdc_6355_5d86_a068_5b5077e26613 -->|defined in| fe4174c7_3b9c_5b26_98a0_b2395ca21939 975da726_2db2_d0fc_7745_82dadf258a14["can()"] d7aa8bdc_6355_5d86_a068_5b5077e26613 -->|method| 975da726_2db2_d0fc_7745_82dadf258a14 fc8ed514_292f_560b_c36b_c9ff8713c3b8["convert()"] d7aa8bdc_6355_5d86_a068_5b5077e26613 -->|method| fc8ed514_292f_560b_c36b_c9ff8713c3b8
Relationship Graph
Source Code
drizzle-kit/src/sqlgenerator.ts lines 3553–3577
class CreateMySqlIndexConvertor extends Convertor {
can(statement: JsonStatement, dialect: Dialect): boolean {
return statement.type === 'create_index' && dialect === 'mysql';
}
convert(statement: JsonCreateIndexStatement): string {
// should be changed
const { name, columns, isUnique } = MySqlSquasher.unsquashIdx(
statement.data,
);
const indexPart = isUnique ? 'UNIQUE INDEX' : 'INDEX';
const uniqueString = columns
.map((it) => {
return statement.internal?.indexes
? statement.internal?.indexes[name]?.columns[it]?.isExpression
? it
: `\`${it}\``
: `\`${it}\``;
})
.join(',');
return `CREATE ${indexPart} \`${name}\` ON \`${statement.tableName}\` (${uniqueString});`;
}
}
Domain
Defined In
Source
Frequently Asked Questions
What is the CreateMySqlIndexConvertor class?
CreateMySqlIndexConvertor is a class in the drizzle-orm codebase, defined in drizzle-kit/src/sqlgenerator.ts.
Where is CreateMySqlIndexConvertor defined?
CreateMySqlIndexConvertor is defined in drizzle-kit/src/sqlgenerator.ts at line 3553.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free