fix issues#49
This commit is contained in:
@@ -80,7 +80,7 @@ func getPackageInfo(orm *mysqldb.MySqlDB, info *model.DBInfo) {
|
|||||||
|
|
||||||
if config.GetIsOutSQL() {
|
if config.GetIsOutSQL() {
|
||||||
// Get create SQL statements.获取创建sql语句
|
// Get create SQL statements.获取创建sql语句
|
||||||
rows, err := orm.Raw("show create table " + tabName).Rows()
|
rows, err := orm.Raw("show create table " + assemblyTable(tabName)).Rows()
|
||||||
//defer rows.Close()
|
//defer rows.Close()
|
||||||
if err == nil {
|
if err == nil {
|
||||||
if rows.Next() {
|
if rows.Next() {
|
||||||
@@ -110,7 +110,7 @@ func getTableElement(orm *mysqldb.MySqlDB, tab string) (el []model.ColumnsInfo)
|
|||||||
keyNums := make(map[string]int)
|
keyNums := make(map[string]int)
|
||||||
// get keys
|
// get keys
|
||||||
var Keys []keys
|
var Keys []keys
|
||||||
orm.Raw("show keys from " + tab).Scan(&Keys)
|
orm.Raw("show keys from " + assemblyTable(tab)).Scan(&Keys)
|
||||||
for _, v := range Keys {
|
for _, v := range Keys {
|
||||||
keyNums[v.KeyName]++
|
keyNums[v.KeyName]++
|
||||||
}
|
}
|
||||||
@@ -118,7 +118,7 @@ func getTableElement(orm *mysqldb.MySqlDB, tab string) (el []model.ColumnsInfo)
|
|||||||
|
|
||||||
var list []genColumns
|
var list []genColumns
|
||||||
// Get table annotations.获取表注释
|
// Get table annotations.获取表注释
|
||||||
orm.Raw("show FULL COLUMNS from " + tab).Scan(&list)
|
orm.Raw("show FULL COLUMNS from " + assemblyTable(tab)).Scan(&list)
|
||||||
// filter gorm.Model.过滤 gorm.Model
|
// filter gorm.Model.过滤 gorm.Model
|
||||||
if filterModel(&list) {
|
if filterModel(&list) {
|
||||||
el = append(el, model.ColumnsInfo{
|
el = append(el, model.ColumnsInfo{
|
||||||
@@ -130,8 +130,9 @@ func getTableElement(orm *mysqldb.MySqlDB, tab string) (el []model.ColumnsInfo)
|
|||||||
// ForeignKey
|
// ForeignKey
|
||||||
var foreignKeyList []genForeignKey
|
var foreignKeyList []genForeignKey
|
||||||
if config.GetIsForeignKey() {
|
if config.GetIsForeignKey() {
|
||||||
orm.Raw(fmt.Sprintf(`select table_schema,table_name,column_name,referenced_table_schema,referenced_table_name,referenced_column_name from INFORMATION_SCHEMA.KEY_COLUMN_USAGE
|
sql := fmt.Sprintf(`select table_schema,table_name,column_name,referenced_table_schema,referenced_table_name,referenced_column_name from INFORMATION_SCHEMA.KEY_COLUMN_USAGE
|
||||||
where table_schema = '%v' AND REFERENCED_TABLE_NAME IS NOT NULL AND TABLE_NAME = '%v'`, config.GetMysqlDbInfo().Database, tab)).Scan(&foreignKeyList)
|
where table_schema = '%v' AND REFERENCED_TABLE_NAME IS NOT NULL AND TABLE_NAME = '%v'`, config.GetMysqlDbInfo().Database, tab)
|
||||||
|
orm.Raw(sql).Scan(&foreignKeyList)
|
||||||
}
|
}
|
||||||
// ------------------end
|
// ------------------end
|
||||||
|
|
||||||
@@ -218,3 +219,7 @@ func getTables(orm *mysqldb.MySqlDB) map[string]string {
|
|||||||
|
|
||||||
return tbDesc
|
return tbDesc
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func assemblyTable(name string) string {
|
||||||
|
return "`" + name + "`"
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user