jjzjj

dm_db_index_usage_stats

全部标签

database - 无法使 Goose DB Migration 用于 Go 测试

我目前正在学习用于Web编程的Golang,现在我将继续学习数据库、RestAPI和Golang中的测试。现在我遇到了Goose的问题数据库迁移和Go测试集成。我想将goose迁移集成到我的Go测试代码中,我的方案是在测试之前启动所有迁移,然后在测试完成后重置所有数据库。我的问题是我找不到任何文档/示例代码来使用Goose.我也尝试执行goose命令使用exec.Command()但它始终返回exitstatus1这是我在执行测试之前触发迁移的现有代码:funcpretest(){varargs=[]string{os.Getenv("DB_SERVER"),"\"user="+os.

postgresql - 事务执行后停留在pg_stat_activity状态

我对PostgreSQL和golang都很陌生。主要是,我试图了解以下内容:为什么我需要Commit语句来关闭连接和另外两个Close电话没用?也非常感谢有关我使用游标的正确/错误方式的指示。在下面的函数中,我使用了gorp要创建一个CURSOR,请逐行查询我的Postgres数据库并将每一行写入编写器函数:func(txn*gorp.Transaction,qstring,params[]interface{},myWriterfunc([]byte,error)){cursor:="DECLAREGRABDATANOSCROLLCURSORFOR"+q_,err:=txn.Exec

go - 调用 db.Ping() 时的无限循环

我正在尝试创建到数据库的基本连接。当我尝试使用db.Ping()测试连接时出现问题;一切正常,直到我到达这条线。Ping将程序发送到无限循环(函数调用永远不会返回),我不确定如何解决这个问题。packagemainimport("database/sql""fmt""html/template""net/http"_"github.com/lib/pq"}typePagestruct{NamestringDBStatusbool}const(host="localhost"port=8080user="username"password="password"dbname="GoTest

mysql - 无法使用 *DB.Rows() 获取所有行

我是gorm的新手,所以如果我有什么误解,请指出。我正在使用MySQL编写小型应用程序,我决定使用gorm作为ORM。源代码和输出如下。packagemainimport("fmt""log""github.com/jinzhu/gorm"_"github.com/jinzhu/gorm/dialects/mysql")typeGroupstruct{gorm.ModelNamestring`gorm:"notnull;unique"`}funcopenDB()*gorm.DB{user:="ipmonitor"password:="testpassword"database:="ip

mysql - 无法连接到 DB : database is closed

我有以下项目结构:-main.go-db--dbinit.go在dbinit.go中,我有以下代码:packagedbimport("database/sql"_"github.com/go-sql-driver/mysql")varDb*sql.DBvarerrerrorfuncinit(){Db,err=sql.Open("mysql","myDBCreds")deferDb.Close()}在main.go中我有:packagemainimport(db"./db")funcmain(){deferdb.Db.Close()sqlStatement:=`INSERTINTOtab

python - 是否可以将 Python GAE db.GeoPt 移植到 Go 类型?

我正在努力将最初用Python编写的现有GAE应用程序移植到Go。到目前为止,它非常棒而且相当简单(尽管它并非没有怪癖)。由于此端口将部署到不同版本的同一个GAE应用程序,因此这两个版本将共享同一个数据存储。问题在于原始Python应用程序广泛使用了db.GeoPt类型。我在我的一种类型上实现了自己的自定义PropertyLoadSaver,这样我就可以通过反射了解如何在Go中表示db.GeoPt。但显然db.GeoPt的内存布局与Go中的任何内容都不兼容。有人知道我会怎么做吗?以前有人这样做过吗?这里有一些代码可以让你们更好地了解我在做什么:func(sS*SomeStruct)Lo

google-app-engine - 祖先查询导致 API 错误 4 (datastore_v3 : NEED_INDEX): no matching index found error

我在处理祖先查询时遇到了很大的困难。这是有效的代码:...uk:=datastore.NewKey(c,config.DatastoreDuelIdKind,did,0,nil)_,err:=datastore.NewQuery(config.DatastoreQuestionInDuelKind).Ancestor(uk).GetAll(c,&roundsPlayedInDuel)...上面的代码产生了正确的结果。现在,如果我在config.DatastoreQuestionInDuelKind的属性上添加Order过滤器,查询将失败并出现NEED_INDEX错误。但是这个失败了:_

mysql - Go:如何使用 sql/db 包从 mysql 检索多个结果

我正在尝试使用Go中的sql/db包从表中获取数据。我的数据库表包含一个用户名“shaw”。有几行用户名shaw在附加的帖子列中有不同的帖子。我有以下代码:开始:funcReadData()string{db,err:=sql.Open("mysql","user1@/my_db")iferr!=nil{fmt.Println(err)}deferdb.Close()vartweetstringrows,err:=db.Query("selecttweetfrompostswhereusername=?","shaw")iferr!=nil{fmt.Println(err)}defer

mongodb - 创建 ObjectId 与让 DB 创建它

我正在使用labixmgo模块作为GoMongo驱动程序。由于Go是并发的(和并行的),在应用程序中生成ObjectId是否安全,还是应该只由数据库来做?如果.Insert()可以返回Id,那将非常简单。但是当我需要它时,我有两种方法可以做到这一点:1)在客户端生成ObjectId并使用...user.ID=bson.NewObjectId()Users.Insert(user)//useuser.IDnormally2)让数据库生成Id并取回...Users.Insert(user)Users.Find(user).One(&user)//useruser.IDnormally第二种

go - 来自 os.Stat/Lstat 的目录大小

假设我在目录上执行os.Stat():funcmain(){fi,_:=os.Stat("/tmp")println(fi.Size())}//548//Programexited.https://play.golang.org/p/NIzGMHRYfi[FileInfo].Size()值究竟代表什么?这不是文件大小,所以我猜是文件数量之类的东西?inode?我在任何地方都找不到明确的答案,所以也许有人可以启发我? 最佳答案 FileInfo提及//lengthinbytesforregularfiles;system-depend