草庐IT

find-by-sql

全部标签

sql - 如何推迟 Postgres 中的外键约束

我试图设置一个可延迟的外键约束,这样当我插入查找/数据透视表时直到事务结束时才检查它。但是,它在psqlshell中工作,但它在代码中不起作用。与在psqlshell中一样,我也在代码中使用begin开始事务。这是sql:createtablecampaign_r_company(campaign_iduuidnotnullreferencescampaign(id)ondeletecascadedeferrableinitiallydeferred,company_idvarchar(32)notnull,primarykey(campaign_id,company_id));代码如

sql - 如何使用Golang直接从文件执行mssql脚本

我一直在寻找上述问题的答案,但没有成功。对不起,如果它是重复的。所以基本上我试图直接从文件中执行一个sql脚本,但我一直收到“''附近的语法不正确。”错误funcAnotherDatabase()(sql.Result,error){rc,err:=os.Open("./myscript.sql")iferr!=nil{returnnil,err}buf:=new(bytes.Buffer)buf.ReadFrom(rc)contents:=buf.String()db,err:=sql.Open("mssql","mydatabase")iferr!=nil{returnnil,er

mysql - Golang 连接到 docker 连接到我的 sql docker getsockopt : connection refused

我在尝试设置我的golang和docker环境时失去了理智。我正在使用dockercompose,它似乎可以很好地预订两个图像,但是当我尝试运行和执行lang操作时,我收到了一个错误。 最佳答案 yaml文件中的间距很重要,您的mysql行应与您的应用程序行对齐。你必须添加一个links:-mysql在您的app:部分下插入一行,以便它知道将两者连接起来。看这里https://github.com/gpuenteallott/golang-mysql-docker-setup/blob/master/docker-compose.y

滑行错误 "The system cannot find the path specified"

我正在尝试使用glide管理我的Go项目。我执行了glideupdate,但是出现如下Thesystemcannotfindthepathspecified错误。C:\path\to\myproject\src>glideupdate[INFO]Downloadingdependencies.Pleasewait...[INFO]-->Fetchinggoogle.golang.org/appengine.[INFO]-->Fetchingcloud.google.com/go.[INFO]-->Fetchinggolang.org/x/net.[INFO]-->Fetchinggit

sql - 为什么 OS X 会终止在终端中立即执行的进程?

我在尝试从我的OSX上的CLI运行迁移时遇到奇怪的错误。当我尝试运行迁移时,它会立即终止进程。我正在使用golang的goose要向上迁移的包,我运行goosecreateCreateUsers我立即得到[1]18990杀鹅创建CreateUsers我也试过运行sql-migrate使用sql-migrateup这是同一件事,但来自不同的包,我得到了同样的错误。事实上,如果我将命令缩短为例如goose,我会遇到同样的问题。可能安装错误?我已经创建了数据库并且可以访问它们。注意我正在寻找为什么会发生这种情况的解释。不一定特定于包,但更多的是Mac决定立即终止进程的原因。附加说明看起来是包

go - SQL 查询在服务器上完成但程序永远不会恢复

我正在使用go-langpostgres驱动程序将我的go脚本连接到redshift。当查询需要5分钟以上的时间才能完成时,我的程序永远无法收回控制权。在redshift-server检查查询后,我确实看到该查询在~7分钟内完成。不知道为什么会这样。我的代码functruncate_and_populate_set_1(db*sql.DB,parameterstring){insert_q:=`...`db:=GetDB()util.ExeQ(db,insert_q)log.Println("Doneaddingrecordstotable")}funcGetDB()*sql.DB{c

sql - 在 SQL 查询之间获取多个日期范围并相应地添加数据

我需要在完成查询SELECT*FROM后选择特定日期范围.例如:var(datestringviewsintimpressionsint)forquery.Next(){err:=query.Scan(&date,&views,&impressions)//handletheerr//gettherangeofdatesforeachmonth//addupalltheviewsandimpressionsinthatspecificrange}“日期”变量显然是数据库查询中的所有日期。日期格式为:2017-10-01(以10月1日为例)10月300人左右,11月100人左右。从这里开

Golang Sql-MySQL - 日期/日期时间 0001 年

我正在使用go-sql-driver/mysql库从MySQL实例中提取数据,但遇到了一个问题,即任何DATE/DATETIME都没有正确扫描字段,尤其是月份和日期是正确的,但YEARYEAR和TIME始终为0001,时间始终为00:00:00。所有其他字段都被正确拉取。有问题的2个字段是date_added(DATE)和date_timestamp(DATETIME)如果有任何帮助,我将不胜感激示例:0001-01-0100:00:00+0000UTC我添加了parseTime=true连接参数也没有成功。连接字符串:mysql,err:=sql.Open("mysql","user

sql - 使用 Postgres 时为 "Operator does not exist: integer =?"

我在go的database/sql包提供的QueryRow方法中调用了一个简单的SQL查询。import("github.com/codegangsta/martini""github.com/martini-contrib/render""net/http""database/sql""fmt"_"github.com/lib/pq"))typeUserstruct{Namestring}funcShow(db*sql.DB,paramsmartini.Params){id:=params["id"]row:=db.QueryRow("SELECTnameFROMusersWHERE

mongodb - Golang MGO Group By multiple params 并按日期时间抓取最后一个

我正在使用Golang和MGO库我有一些测试记录,我想按序列号、阶段、阶段顺序进行分组,并按日期时间字段获取最后一条记录。大多数情况下,每个序列/阶段/阶段订单有1条记录,但也可能有多个测试的情况,我想获取最后完成的测试,而不是该组合的所有测试。所以,简而言之,我的表中有些记录具有相同的序列、阶段和阶段顺序,但时间戳不同,我想获取整个数据集的最后一条或唯一一条记录,以便我有一个记录每个(系列、阶段、阶段顺序)组合,如果有重复测试,我总是抓取该组中的最后一条记录。在上面的示例中,我只想取回该系列的第二条记录。我的代码:我试图创建一个管道,但似乎无法正确设置它:pipeline:=[]bs