Skip to content

Commit dc3260b

Browse files
author
zhangx
committed
增加 column 的comment
1 parent 5d9f04f commit dc3260b

File tree

2 files changed

+14
-16
lines changed

2 files changed

+14
-16
lines changed

Diff for: utils.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ var Debug = false
8484
func Generate(columnTypes map[string]map[string]string, columnsSorted []string, tableName string, structName string, pkgName string, jsonAnnotation bool, gormAnnotation bool, gureguTypes bool) ([]byte, error) {
8585
var dbTypes string
8686
dbTypes = generateMysqlTypes(columnTypes, columnsSorted, 0, jsonAnnotation, gormAnnotation, gureguTypes)
87-
src := fmt.Sprintf("package %s\ntype %s %s}",
87+
src := fmt.Sprintf("package %s\ntype %s %s\n}",
8888
pkgName,
8989
structName,
9090
dbTypes)

Diff for: utils_mysql.go

+13-15
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import (
99
)
1010

1111
// GetColumnsFromMysqlTable Select column details from information schema and return map of map
12-
func GetColumnsFromMysqlTable(mariadbUser string, mariadbPassword string, mariadbHost string, mariadbPort int, mariadbDatabase string, mariadbTable string) (*map[string]map[string]string, []string, error) {
12+
func GetColumnsFromMysqlTable(mariadbUser string, mariadbPassword string, mariadbHost string, mariadbPort int, mariadbDatabase string, mariadbTable string) (*map[string]map[string]string, []string, error) {
1313

1414
var err error
1515
var db *sql.DB
@@ -26,13 +26,12 @@ func GetColumnsFromMysqlTable(mariadbUser string, mariadbPassword string, mariad
2626
return nil, nil, err
2727
}
2828

29-
30-
columnNamesSorted:=[]string{}
29+
columnNamesSorted := []string{}
3130

3231
// Store colum as map of maps
3332
columnDataTypes := make(map[string]map[string]string)
3433
// Select columnd data from INFORMATION_SCHEMA
35-
columnDataTypeQuery := "SELECT COLUMN_NAME, COLUMN_KEY, DATA_TYPE, IS_NULLABLE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = ? AND table_name = ?"
34+
columnDataTypeQuery := "SELECT COLUMN_NAME, COLUMN_KEY, DATA_TYPE, IS_NULLABLE, COLUMN_COMMENT FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = ? AND table_name = ?"
3635

3736
if Debug {
3837
fmt.Println("running: " + columnDataTypeQuery)
@@ -55,10 +54,11 @@ func GetColumnsFromMysqlTable(mariadbUser string, mariadbPassword string, mariad
5554
var columnKey string
5655
var dataType string
5756
var nullable string
58-
rows.Scan(&column, &columnKey, &dataType, &nullable)
57+
var comment string
58+
rows.Scan(&column, &columnKey, &dataType, &nullable, &comment)
5959

60-
columnDataTypes[column] = map[string]string{"value": dataType, "nullable": nullable, "primary": columnKey}
61-
columnNamesSorted=append(columnNamesSorted, column)
60+
columnDataTypes[column] = map[string]string{"value": dataType, "nullable": nullable, "primary": columnKey, "comment": comment}
61+
columnNamesSorted = append(columnNamesSorted, column)
6262
}
6363

6464
return &columnDataTypes, columnNamesSorted, err
@@ -100,16 +100,14 @@ func generateMysqlTypes(obj map[string]map[string]string, columnsSorted []string
100100
if jsonAnnotation == true {
101101
annotations = append(annotations, fmt.Sprintf("json:\"%s\"", key))
102102
}
103-
if len(annotations) > 0 {
104-
structure += fmt.Sprintf("\n%s %s `%s`",
105-
fieldName,
106-
valueType,
107-
strings.Join(annotations, " "))
108103

104+
if len(annotations) > 0 {
105+
// add colulmn comment
106+
comment:=mysqlType["comment"]
107+
structure += fmt.Sprintf("\n%s %s `%s` //%s", fieldName, valueType, strings.Join(annotations, " "), comment)
108+
//structure += fmt.Sprintf("\n%s %s `%s`", fieldName, valueType, strings.Join(annotations, " "))
109109
} else {
110-
structure += fmt.Sprintf("\n%s %s",
111-
fieldName,
112-
valueType)
110+
structure += fmt.Sprintf("\n%s %s",fieldName,valueType)
113111
}
114112
}
115113
return structure

0 commit comments

Comments
 (0)