【问题标题】:Go SQLite3 database connection using sql.Open使用 sql.Open 进行 SQLite3 数据库连接
【发布时间】:2015-05-25 16:31:28
【问题描述】:

我是 golang 新手,我很难连接到本地计算机上托管的 SQLite3 数据库。我已经创建了 SQLite3 数据库,并且已经完成了一些我喜欢的教程,但它们不起作用。目前我的代码基于另一个post,但我仍然无法与我的数据库建立连接。我相信我的问题在于我使用“sql.Open”,因为即使在咨询the sql package 之后,我也不清楚我需要提供的信息。

代码构建良好,但报告

unable to open database file
error Two tripped

当我尝试运行下面的代码时

package main

import (
    "database/sql"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
    _"github.com/mattn/go-sqlite3"
)

func main() {
       
    db, err := sql.Open("sqlite3", "myuser:mypassword@/myDBname") //not clear on what is needed for the user and password
    if err != nil {
        fmt.Println(err)
        fmt.Println("error one tripped")
        return
    }
    defer db.Close()
    err = db.Ping()
    if err != nil {
        fmt.Println(err)
        fmt.Println("error Two tripped")
        return
    }
    fmt.Println("Ping")
    
    return

}

我没有为我正在使用的数据库设置用户名或密码,该数据库托管在本地计算机上。我在“sql.Open”中尝试了几种我的计算机用户名/密码和没有用户名/密码的组合,但我仍然遇到同样的问题。

我已安装并导入包 code.google.com/p/go-sqlite/go1/sqlite3 我的数据库与我的 Go 代码在同一个文件夹中。

如何使用连接到 SQLite 数据库? sql.Open 命令我做错了什么?

【问题讨论】:

    标签: database go sqlite


    【解决方案1】:

    对于没有用户名或密码的情况,只需将包含文件名的数据库的完整路径放入即可。

    例如:

    db, err := sql.Open("sqlite3", "/user/home/workspace/myDBname.db")

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-08
      • 1970-01-01
      相关资源
      最近更新 更多