如何使用 golang 调用 sqlplus?

想通过golang调用本地的sqlplus来执行一个存储过程.

如果调用本地程序以及如何给sqlplus传递用户名和密码之类的参数?谢谢

阅读 4.9k
1 个回答

os/exec包提供了对本地程序的调用。我自己在程序中也有使用,简单封装如下:

// 执行系统命令并返回结果
func Command(pro string, argv []string, baseDir string) ([]byte, error) {
    cmd := exec.Command(pro, argv...)
    // 设置命令运行时目录
    if baseDir != "" {
        cmd.Dir = baseDir
    }
    res, err := cmd.Output()
    if err != nil {
        return nil, err
    }
    return res, nil
}

比如:要执行 /usr/bin/sqlplus cmsuser/user@192.168.2.1/cms

那么调用就是:

res, err := Command("/usr/bin/sqlplus", []string{"cmsuser/user@192.168.2.1/cms"}, "")

在命令行中以空格分割的参数形成slice参数组.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题