GORM计数返回0

时间:2019-07-03 15:01:54

标签: go go-gorm

问题陈述

问题1

尝试检索计数时,我得到0。 查询表达式是完美的,据此我可以假设正在构建的查询是正确的。

但是,无论查询如何,结果都是0。

问题2

我需要在Table子句中将数据库名称指定为Table(dbname.tbname)

在任何其他查询中都不是必需的,只有在使用Count()时才需要

我可能会缺少什么?

package main

import (
    "github.com/jinzhu/gorm"
    _ "github.com/jinzhu/gorm/dialects/mssql"
    _ "github.com/jinzhu/gorm/dialects/mysql"
    _ "github.com/jinzhu/gorm/dialects/postgres"
    _ "github.com/jinzhu/gorm/dialects/sqlite"
)

var db *gorm.DB
var err error


func main() {

  db, err = gorm.Open("mysql",  "gorm:gorm@tcp(localhost:9910)/gorm?charset=utf8&parseTime=True")

 if err != nil {
         panic(err)
    }

    db.LogMode(true)

      var count int
      var  db = "db"
      var  tb  = "tb"
      var columnname = "somecol"
      var date = "2014-01-02"

      err := db.Table(db+"."+tb).Where("? >= ?", columnname, date+" 00:01:00").Count(&count)

        if err != nil {
                Error.Println(err.Error.Error())
       }
         fmt.Println("The Count is \n", count)

}

更新1

以下作品。

但这是我的理解,将结果用作* sql.Row,然后使用scan检索结果。

但是我不明白,为什么...Count(&count)出现运行时错误?

0 个答案:

没有答案