如何使用SQL模式更改表?

时间:2018-11-25 11:00:46

标签: mysql sql database go sqlx

我正在使用sqlx将MySQL数据库连接到Golang。我有一个SQL模式,其中定义了所有Instance of 'DocumentSnapshot'语句。这里是一个例子:

CREATE TABLE IF NOT EXISTS...

这是我连接数据库的方式,每次都执行所有查询:

CREATE TABLE IF NOT EXISTS `users`
  (
     `id` INT(0) NOT NULL auto_increment,
     `language_code` VARCHAR(5) NOT NULL,
     `premium` BIT(0) DEFAULT 0,
     `status` VARCHAR(100) NOT NULL DEFAULT '',
     `user_id` INT(0) NOT NULL,
     PRIMARY KEY (id)
  );
...

我想每次添加新列或编辑一些参数(例如Database, err = sqlx.Connect(Config.Database.Type, Config.Database.DataSourceString) // Connect to the database if err != nil { // If there's an error, handle it panic(err.Error()) } defer Database.Close() // Close the database when the function finishes schemaSQL, err := ioutil.ReadFile("schema.sql") // Read the configuration file (DealsFinderBot/config.yaml) if err != nil { // If there's an error, handle it panic(err.Error()) } for _, query := range strings.Split(string(schemaSQL), ";") { // Loop on the queries of the schema if strings.TrimSpace(query) != "" { // If the query is not empty Database.MustExec(query) // Execute the query } } NOT NULL)时(更改表)进行更新。我该怎么办?

0 个答案:

没有答案