Generate different sql builder files for MySQL and PostgreSQL.

This commit is contained in:
go-jet 2020-05-03 21:30:57 +02:00
parent 980b9b6aac
commit a4b4710637
4 changed files with 82 additions and 43 deletions

View file

@ -22,6 +22,7 @@ func GenerateFiles(destDir string, schemaInfo metadata.SchemaMetaData, dialect j
err := utils.CleanUpGeneratedFiles(destDir)
utils.PanicOnError(err)
tableSQLBuilderTemplate := getTableSQLBuilderTemplate(dialect)
generateSQLBuilderFiles(destDir, "table", tableSQLBuilderTemplate, schemaInfo.TablesMetaData, dialect)
generateSQLBuilderFiles(destDir, "view", tableSQLBuilderTemplate, schemaInfo.ViewsMetaData, dialect)
generateSQLBuilderFiles(destDir, "enum", enumSQLBuilderTemplate, schemaInfo.EnumsMetaData, dialect)
@ -33,6 +34,14 @@ func GenerateFiles(destDir string, schemaInfo metadata.SchemaMetaData, dialect j
fmt.Println("Done")
}
func getTableSQLBuilderTemplate(dialect jet.Dialect) string {
if dialect.Name() == "PostgreSQL" {
return tablePostgreSQLBuilderTemplate
}
return tableSQLBuilderTemplate
}
func generateSQLBuilderFiles(destDir, fileTypes, sqlBuilderTemplate string, metaData []metadata.MetaData, dialect jet.Dialect) {
if len(metaData) == 0 {
return