github.com/RevenueMonster/sqlike@v1.0.6/sql/dialect/mysql/column.go (about) 1 package mysql 2 3 import sqlstmt "github.com/RevenueMonster/sqlike/sql/stmt" 4 5 // GetColumns : 6 func (ms *MySQL) GetColumns(stmt sqlstmt.Stmt, dbName, table string) { 7 stmt.WriteString(`SELECT ORDINAL_POSITION, COLUMN_NAME, COLUMN_TYPE, COLUMN_DEFAULT, IS_NULLABLE, 8 DATA_TYPE, CHARACTER_SET_NAME, COLLATION_NAME, COLUMN_COMMENT, EXTRA FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ? ORDER BY ORDINAL_POSITION;`) 9 stmt.AppendArgs(dbName, table) 10 } 11 12 // RenameColumn : 13 func (ms *MySQL) RenameColumn(stmt sqlstmt.Stmt, db, table, oldColName, newColName string) { 14 stmt.WriteString("ALTER TABLE " + ms.TableName(db, table)) 15 stmt.WriteString(" RENAME COLUMN " + ms.Quote(oldColName) + " TO " + ms.Quote(newColName)) 16 stmt.WriteByte(';') 17 } 18 19 // DropColumn : 20 func (ms *MySQL) DropColumn(stmt sqlstmt.Stmt, db, table, column string) { 21 stmt.WriteString("ALTER TABLE " + ms.TableName(db, table)) 22 stmt.WriteString(" DROP COLUMN " + ms.Quote(column)) 23 stmt.WriteByte(';') 24 }