mirror of https://github.com/go-gorm/gorm.git
feat: migrator support table comment (#6225)
* feat: migrator support table comment * feat: migrator support tableType.It like ColumnTypes * Avoid updating the go.mod file. * Update tests_all.sh * Update migrator.go * remove Catalog() & Engine() methods. * remove CatalogValue & EngineValue. --------- Co-authored-by: Jinzhu <wosmvp@gmail.com>
This commit is contained in:
parent
32045fdd7d
commit
e61b98d696
|
@ -56,6 +56,14 @@ type Index interface {
|
||||||
Option() string
|
Option() string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TableType table type interface
|
||||||
|
type TableType interface {
|
||||||
|
Schema() string
|
||||||
|
Name() string
|
||||||
|
Type() string
|
||||||
|
Comment() (comment string, ok bool)
|
||||||
|
}
|
||||||
|
|
||||||
// Migrator migrator interface
|
// Migrator migrator interface
|
||||||
type Migrator interface {
|
type Migrator interface {
|
||||||
// AutoMigrate
|
// AutoMigrate
|
||||||
|
@ -72,6 +80,7 @@ type Migrator interface {
|
||||||
HasTable(dst interface{}) bool
|
HasTable(dst interface{}) bool
|
||||||
RenameTable(oldName, newName interface{}) error
|
RenameTable(oldName, newName interface{}) error
|
||||||
GetTables() (tableList []string, err error)
|
GetTables() (tableList []string, err error)
|
||||||
|
TableType(dst interface{}) (TableType, error)
|
||||||
|
|
||||||
// Columns
|
// Columns
|
||||||
AddColumn(dst interface{}, field string) error
|
AddColumn(dst interface{}, field string) error
|
||||||
|
|
|
@ -949,3 +949,8 @@ func (m Migrator) GetIndexes(dst interface{}) ([]gorm.Index, error) {
|
||||||
func (m Migrator) GetTypeAliases(databaseTypeName string) []string {
|
func (m Migrator) GetTypeAliases(databaseTypeName string) []string {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TableType return tableType gorm.TableType and execErr error
|
||||||
|
func (m Migrator) TableType(dst interface{}) (gorm.TableType, error) {
|
||||||
|
return nil, errors.New("not support")
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
package migrator
|
||||||
|
|
||||||
|
import (
|
||||||
|
"database/sql"
|
||||||
|
)
|
||||||
|
|
||||||
|
// TableType table type implements TableType interface
|
||||||
|
type TableType struct {
|
||||||
|
SchemaValue string
|
||||||
|
NameValue string
|
||||||
|
TypeValue string
|
||||||
|
CommentValue sql.NullString
|
||||||
|
}
|
||||||
|
|
||||||
|
// Schema returns the schema of the table.
|
||||||
|
func (ct TableType) Schema() string {
|
||||||
|
return ct.SchemaValue
|
||||||
|
}
|
||||||
|
|
||||||
|
// Name returns the name of the table.
|
||||||
|
func (ct TableType) Name() string {
|
||||||
|
return ct.NameValue
|
||||||
|
}
|
||||||
|
|
||||||
|
// Type returns the type of the table.
|
||||||
|
func (ct TableType) Type() string {
|
||||||
|
return ct.TypeValue
|
||||||
|
}
|
||||||
|
|
||||||
|
// Comment returns the comment of current table.
|
||||||
|
func (ct TableType) Comment() (comment string, ok bool) {
|
||||||
|
return ct.CommentValue.String, ct.CommentValue.Valid
|
||||||
|
}
|
Loading…
Reference in New Issue