Documentation
¶
Index ¶
- Constants
- func GetAllColumnsOnTable(db DbHolder, tableName string, schema string) ([]string, error)
- func GetAllTables(db DbHolder, config *Configuration) ([]string, error)
- func GetPksOfTables(db DbHolder, config *Configuration, tableNames []string) (map[string][]string, error)
- type AllTableStore
- type ColumnScan
- type Configuration
- type DBManager
- func (holder *DBManager) Begin() (*sql.Tx, error)
- func (holder *DBManager) BeginTx(ctx context.Context, opts *sql.TxOptions) (*sql.Tx, error)
- func (holder *DBManager) Close() error
- func (holder *DBManager) Conn(ctx context.Context) (*sql.Conn, error)
- func (holder *DBManager) Driver() driver.Driver
- func (holder *DBManager) Exec(query string, args ...interface{}) (sql.Result, error)
- func (holder *DBManager) ExecContext(ctx context.Context, query string, args ...interface{}) (sql.Result, error)
- func (holder *DBManager) Finalize() error
- func (holder *DBManager) Ping() error
- func (holder *DBManager) PingContext(ctx context.Context) error
- func (holder *DBManager) Prepare(query string) (*sql.Stmt, error)
- func (holder *DBManager) PrepareContext(ctx context.Context, query string) (*sql.Stmt, error)
- func (holder *DBManager) Query(query string, args ...interface{}) (*sql.Rows, error)
- func (holder *DBManager) QueryContext(ctx context.Context, query string, args ...interface{}) (*sql.Rows, error)
- func (holder *DBManager) QueryRow(query string, args ...interface{}) *sql.Row
- func (holder *DBManager) QueryRowContext(ctx context.Context, query string, args ...interface{}) *sql.Row
- func (holder *DBManager) SetConnMaxLifetime(d time.Duration)
- func (holder *DBManager) SetMaxIdleConns(n int)
- func (holder *DBManager) SetMaxOpenConns(n int)
- func (holder *DBManager) Stats() sql.DBStats
- type Db
- type DbHolder
- type RowObject
Constants ¶
View Source
const ( DiffStatusInit int8 = 0 //: 比較前, DiffStatusAdd int8 = 1 //: Add, DiffStatusDel int8 = 2 //: Delete, DiffStatusMod int8 = 3 //: Mod, DiffStatusNotModified int8 = 4 //: NotModified )
View Source
const DefaultConfigFilePath = "configuration.yaml"
Variables ¶
This section is empty.
Functions ¶
func GetAllColumnsOnTable ¶
func GetAllTables ¶
func GetAllTables(db DbHolder, config *Configuration) ([]string, error)
Get all table name from db
func GetPksOfTables ¶
func GetPksOfTables(db DbHolder, config *Configuration, tableNames []string) (map[string][]string, error)
Get Primary key information
Types ¶
type AllTableStore ¶
type AllTableStore struct {
AllData map[string]map[string]*RowObject
AllColumn map[string][]string
TotalDataCount uint64
// contains filtered or unexported fields
}
func (*AllTableStore) CollectAllTableData ¶
func (ats *AllTableStore) CollectAllTableData(db DbHolder, config *Configuration, tablePks map[string][]string) error
func (*AllTableStore) ExtractChangedData ¶
func (ats *AllTableStore) ExtractChangedData(beforeData *AllTableStore) map[string][]*RowObject
テーブルごとに、追加、変更(変更前後)、削除のデータだけをまとめたものを戻り値で返す 呼ぶときは必ず変更前データを引数にし、メッソドレシーバは変更後データとすること
type ColumnScan ¶
func (*ColumnScan) GetValueString ¶
func (rs *ColumnScan) GetValueString() string
func (*ColumnScan) Scan ¶
func (rs *ColumnScan) Scan(value interface{}) error
func (*ColumnScan) String ¶
func (rs *ColumnScan) String() string
type Configuration ¶
type Configuration struct {
Db Db `yaml:"db"`
}
func GetConfiguration ¶
func GetConfiguration() (*Configuration, error)
func LoadConfiguration ¶
func LoadConfiguration(configFilePath string) (*Configuration, error)
type DBManager ¶
type DBManager struct {
// contains filtered or unexported fields
}
func GetDBInstance ¶
func (*DBManager) ExecContext ¶
func (holder *DBManager) ExecContext(ctx context.Context, query string, args ...interface{}) (sql.Result, error)
Wrapper for sql.DB#ExecContext()
func (*DBManager) PingContext ¶
Wrapper for sql.DB#PingContext()
func (*DBManager) PrepareContext ¶
Wrapper for sql.DB#PrepareContext()
func (*DBManager) QueryContext ¶
func (holder *DBManager) QueryContext(ctx context.Context, query string, args ...interface{}) (*sql.Rows, error)
Wrapper for sql.DB#QueryContext()
func (*DBManager) QueryRowContext ¶
func (holder *DBManager) QueryRowContext(ctx context.Context, query string, args ...interface{}) *sql.Row
Wrapper for sql.DB#QueryRowContext()
func (*DBManager) SetConnMaxLifetime ¶
Wrapper for sql.DB#SetConnMaxLifetime()
func (*DBManager) SetMaxIdleConns ¶
Wrapper for sql.DB#SetMaxIdleConns()
func (*DBManager) SetMaxOpenConns ¶
Wrapper for sql.DB#SetMaxOpenConns()
type DbHolder ¶
type DbHolder interface {
Finalize() error
Close() error
// Wrapper for sql.DB#PingContext()
PingContext(ctx context.Context) error
// Wrapper for sql.DB#Ping()
Ping() error
// Wrapper for sql.DB#SetMaxIdleConns()
SetMaxIdleConns(n int)
// Wrapper for sql.DB#SetMaxOpenConns()
SetMaxOpenConns(n int)
// Wrapper for sql.DB#SetConnMaxLifetime()
SetConnMaxLifetime(d time.Duration)
// Wrapper for sql.DB#Stats()
Stats() sql.DBStats
// Wrapper for sql.DB#PrepareContext()
PrepareContext(ctx context.Context, query string) (*sql.Stmt, error)
// Wrapper for sql.DB#Prepare()
Prepare(query string) (*sql.Stmt, error)
// Wrapper for sql.DB#ExecContext()
ExecContext(ctx context.Context, query string, args ...interface{}) (sql.Result, error)
// Wrapper for sql.DB#Exec()
Exec(query string, args ...interface{}) (sql.Result, error)
// Wrapper for sql.DB#QueryContext()
QueryContext(ctx context.Context, query string, args ...interface{}) (*sql.Rows, error)
// Wrapper for sql.DB#Query()
Query(query string, args ...interface{}) (*sql.Rows, error)
// Wrapper for sql.DB#QueryRowContext()
QueryRowContext(ctx context.Context, query string, args ...interface{}) *sql.Row
// Wrapper for sql.DB#QueryRow()
QueryRow(query string, args ...interface{}) *sql.Row
// Wrapper for sql.DB#BeginTx()
BeginTx(ctx context.Context, opts *sql.TxOptions) (*sql.Tx, error)
// Wrapper for sql.DB#Begin()
Begin() (*sql.Tx, error)
// Wrapper for sql.DB#Driver()
Driver() driver.Driver
// Wrapper for sql.DB#Conn()
Conn(ctx context.Context) (*sql.Conn, error)
}
type RowObject ¶
type RowObject struct {
DiffStatus int8
ModifiedColumnIndex []uint8
ColumnNames []string
ColScans []*ColumnScan
IsBeforeData bool
}
func (*RowObject) EqualColumns ¶
Click to show internal directories.
Click to hide internal directories.