【发布时间】:2014-01-02 18:29:47
【问题描述】:
我正在尝试让我的应用程序连接到本地 MySQL 数据库。我正在将必要的包导入一个文件中,该文件定义了一个初始化连接的函数
import (
"database/sql"
_ "github.com/go-sql-driver/mysql"
)
github.com/go-sql-driver/mysql 在项目中只导入一次,我相信这意味着它的 init 只被调用一次。但是,每当我使用 goapp serve 启动我的应用程序时,我都会收到
Register called twice for driver mysql
我不知道是什么原因造成的。我知道违规行在哪里,但我不确定Register() 方法是如何被调用两次的。我的怀疑是,因为goapp 在发生更改时会刷新您的应用程序,所以它会一次又一次地调用init(),从而导致Register() 被调用两次。
以前有人见过这种行为吗?
【问题讨论】:
-
使用dev_appserver.py时是否有效?
-
我刚刚试了一下并运行了命令
dev_appserver.py .,但我仍然遇到同样的错误。 -
我猜现在的冒犯行是
_ "github.com/go-sql-driver/mysql"。当我删除它时,错误消失了,但我知道我需要它在那里。
标签: mysql google-app-engine go