MCPcopy Create free account
hub / github.com/actiontech/dtle / listMySQLColumns

Function listMySQLColumns

api/handler/v2/database.go:233–254  ·  view source on GitHub ↗
(logger hclog.Logger, reqParam *models.ListColumnsReqV2)

Source from the content-addressed store, hash-verified

231}
232
233func listMySQLColumns(logger hclog.Logger, reqParam *models.ListColumnsReqV2) ([]string, error) {
234 uri, err := buildMysqlUri(reqParam.Host, reqParam.User, reqParam.Password,
235 reqParam.CharacterSet, int(reqParam.Port), reqParam.IsPasswordEncrypted)
236 if err != nil {
237 return nil, fmt.Errorf("build database Uri failed: %v", err)
238 }
239
240 db, err := sql.CreateDB(uri)
241 if err != nil {
242 return nil, err
243 }
244 defer db.Close()
245
246 logger.Info("get columns")
247
248 columns, err := sql.ListColumns(db, reqParam.Schema, reqParam.Table)
249 if err != nil {
250 return nil, err
251
252 }
253 return columns, nil
254}
255
256func buildMysqlUri(host, user, pwd, characterSet string, port int, isMysqlPasswordEncrypted bool) (string, error) {
257 mysqlConnectionConfig := mysqlconfig.ConnectionConfig{

Callers 2

ListDatabaseColumnsV2Function · 0.85
ListMysqlColumnsV2Function · 0.85

Calls 4

CreateDBFunction · 0.92
ListColumnsFunction · 0.92
buildMysqlUriFunction · 0.85
CloseMethod · 0.45

Tested by

no test coverage detected