如何从sql数据库备份一行?

时间:2019-06-26 06:38:58

标签: sql go backup

我想在golang中创建备份sql数据功能。我已经编写了一个示例代码,该代码还将备份sql数据库和用于表的命令。但是我不知道如何将sql中的一行数据转储到给定的路径中?

对于数据库:

package main

import (
    "io/ioutil"
    "log"
    "os/exec"
)

func main() {
    cmd := exec.Command("mysqldump", "-P3306", "-hhost", "-uuser", "-ppassword", "database_name")
    stdout, err := cmd.StdoutPipe()
    if err != nil {
        log.Fatal(err)
    }

    if err := cmd.Start(); err != nil {
        log.Fatal(err)
    }

    bytes, err := ioutil.ReadAll(stdout)
    if err != nil {
        log.Fatal(err)
    }
    err = ioutil.WriteFile("./out.sql", bytes, 0644)
    if err != nil {
        panic(err)
    }

}

对于表格,我们可以如下更改命令:

cmd := exec.Command("mysqldump", "-P3306", "-hhost", "-uuser", "-ppassword", "database_name" "table_name")

要转储表的行,我应该写些简短的建议。

例如:转储id等于1的那一行

0 个答案:

没有答案