1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
list := []map[string]interface{}{}
retData := []string{}
// SQLite
if req.IsSQLite() {
req.DB.Table("sqlite_master").Where(map[string]interface{}{
"type": "table",
}).Find(&list)
for _, value := range list {
for key, value := range value {
if key == "name" {
retData = append(retData, value.(string))
}
}
}
return retData, nil
}
// MySQL
if err := req.DB.Raw("show tables").Scan(&list).Error; err != nil {
return nil, err
}
for _, value := range list {
for _, value := range value {
retData = append(retData, value.(string))
}
}
|