草庐IT

postgresql_psycopg

全部标签

postgresql - postgres中如何查询timestamptz并与go中的time.Time进行比较?

这个问题在这里已经有了答案:Gotimecomparison(2个答案)关闭3年前。我正在使用Postgres10和一个虚拟表CREATETABLEdemo(nowtimestamptz);当使用jmoiron/sqlx时,我无法将time.Time与timestamptz进行比较。示例代码为db,_:=sqlx.Connect("postgres",dsn)now,_:=time.Parse(time.RFC3339,"2019-03-22T00:00:00Z")db.Exec("INSERTINTOdemo(now)VALUES($1)",now)query:="SELECTtim

postgresql - Golang 在搜索 Postgres 时崩溃

所以我有一个功能要添加到我正在编写的程序中。基本上,如果用户的cookie说明他的用户名和密码是什么,它将在存储的postgres数据库中查找用户名和cookie的散列值,如果我得到匹配,则返回肯定响应和JWTtoken(与我可以使用bcrypt散列——存储散列密码是否是个好主意可能是另一个问题)。每次用户访问需要保存密码的页面时,都会向服务器发出此请求。我的问题是我时不时会收到以下信息insideCookieLoginapp_1|search_userinfo_tablestarteddb_1|FATAL:sorry,toomanyclientsalreadyapp_1|2018/0

postgresql - 去模拟 postgresql 错误

如本answer中所讨论,我编写了用于检查唯一key违规的代码:iferr,ok:=err.(*pq.Error);ok{iferr.Code.Name()=="unique_violation"{fail(w,http.StatusBadRequest,0,"Itemalreadyexists")return}}为了编写单元测试用例,我需要模拟这个错误。我已经为这样的错误编写了模拟:returnpq.Error{Code:"unique_violation"}但这与代码不符。如何模拟pq.Error? 最佳答案 如Godoc中所述

postgresql - 使用初始模式构建 postgres docker 容器

我正在寻找构建代表已经存在的公司数据库的dockerfile。同样,我想创建一个通过恢复psql转储开始的docker文件。我的psql_dump.sql在.目录中。FROMpostgresADD./init_datarun"createdb""--template=template0""my_database"run"psql""-d""my_database"--command="createrolemy_adminsuperuser"run"psql""my_database""我认为这样做就足够了。我想避免使用.sh脚本的解决方案。点赞thissolution.我使用templ

postgresql - 使用初始模式构建 postgres docker 容器

我正在寻找构建代表已经存在的公司数据库的dockerfile。同样,我想创建一个通过恢复psql转储开始的docker文件。我的psql_dump.sql在.目录中。FROMpostgresADD./init_datarun"createdb""--template=template0""my_database"run"psql""-d""my_database"--command="createrolemy_adminsuperuser"run"psql""my_database""我认为这样做就足够了。我想避免使用.sh脚本的解决方案。点赞thissolution.我使用templ

postgresql - func (rs *Rows) 扫描处理一个列类型的数组字符串

我的Postgres数据库中有一列用于标记,它是一个字符串数组。我在我的golang中将它定义为:typedevicestruct{deviceIDstringmacAddresssql.NullStringnamesql.NullStringagentIDsql.NullStringgroupTypesql.NullStringtags[]stringnormalizedboolnormalizedNamestringnormalizedMacAddressstring}当我这样对行运行扫描时:err=rows.Scan(&d.deviceID,&d.name,&d.tags,&d.

postgresql - 在 Revel 中使用 Gorm 查询表

我正在让Revel尝试构建一个小型网络应用程序。我在理解如何查询数据库并在HTMLView中显示结果时遇到了问题。我已经有一个名为“shop”的PostgreSQL数据库和一个名为“books”的表。此表包含字段“id”、“booknum”、“bookname”、“author”和“category”。我已经设法获得了数据库连接并创建了模型结构。现在我不知道如何为查询创建函数,即*("SELECT*FROMbooks;")并将结果显示在索引View文件中。在干净的revel构建中,我添加了以下代码。应用/Controller/app.gopackagecontrollersimport

postgresql - 如何在 GO 的准备语句中使用 postgresql DEFAULT 关键字?

假设我有一个表t1:col1:varchar(255),col2:booleanDEFAULTtrue然后我创建了这个准备好的语句p1:INSERTINTOt1(col1,col2)VALUES($1,$2)在GO中,我正在执行准备好的语句,但基于条件1,我想将DEFAULT关键字传递给准备好的语句中的第二个参数,即ifcondition1{sql.Exec(p1,"FOO","DEFAULT")//butthisreturnsanerror:invalidinputsyntaxfortypeboolean:"DEFAULT"}else{//passotherparameterstot

postgresql - pgbouncer 错误 : closing because: client unexpected eof (age=0)

我的项目是用golang写的,我使用postgresql数据库,使用pgbouncer作为数据库池连接。完成基本功能后,我进行了压力测试。通过命令测试运行良好(仅1个并发):ab-n1000-c1-p'/home/mwh/postfile.txt'-T'application/x-www-form-urlencoded''http://192.168.1.229:8090/hwSdk/tsk/get_t_k.json'但是当我增加并发度:ab-n10000-c100-p'/home/mwh/postfile.txt1-T'application/x-www-form-urlencode

postgresql - Go 和 postgres 将整数重新解释为 nil 类型

我正在尝试让一些旧代码通过单元测试。给我带来问题的测试在这里:funcTest1(t*testing.T){//CodetestDevice:=Device{ID:1,Guid:"C6",Name:"testdevice",}err:=Dbmap.Insert(&testDevice)So(err,ShouldBeNil)//Morecode}当我运行gotest,这将返回:'sql:Scanerroroncolumnindex0:convertingdriver.Valuetype("")toaint64:invalidsyntax'这很奇怪,因为我传递给它1,一个整数。设备结构在这