为了账号安全,请及时绑定邮箱和手机立即绑定

使用 ' 和 " 指示数据库列名的正确方法是什么?

使用 ' 和 " 指示数据库列名的正确方法是什么?

Go
小怪兽爱吃肉 2021-10-25 16:21:55
我的数据库中有一个表,列名都以大写字母开头(即:FMR_Number、Primary_Value)。列名不受我控制。数据库中的所有其他列(在其他表中)都是小写的。我已将一个结构映射到表,但我不断从查询中得到一个丢失的目标错误。我相信这是因为名称映射器设置为 ToLower (这是它在其他任何地方都需要的)。我试图使用这种格式StructField string 'db:"RealColumnName"'  明确指定映射,但我得到了一个非法的符文文字。当我查看其他人代码中的示例时,我看到它以我刚刚尝试的方式表示。如果我将 ' 和 " 反转为StructField string "db:'RealColumnName'"  我没有收到非法符文文字错误,但我确实收到了缺少目的地的错误。我在这里做错了什么?我正在使用 sqlx。我的结构type pah struct {    FMR_Fund_Number                  string  'db:"FMR_Fund_Number"'    Business_Data_Date               string  'db:"Business_Data_Date"'    Outbound_Composition_Code        string  'db:"Outbound_Composition_Code"'    Composition_Sub_Code             string  'db:"Composition_Sub_Code"'    Composition_Sub_Code_Description string  'db:"Composition_Sub_Code_Description"'    Position_Name                    string  'db:"Position_Name"'    Primary_Value                    float64 'db:"Primary_Value"'    Record_Order                     int     'db:"Record_Order"'    Tier_Indicator                   string  'db:"Tier_Indicator"'}我的数据库电话func loadAssetAllocation() AssetAllocations {    pahGroup := []pah{}    pahQuery := "SELECT FMR_Fund_Number,Business_Data_Date,Outbound_Composition_Code,Composition_Sub_Code,Composition_Sub_Code_Description,Primary_Value,Tier_Indicator,Record_Order FROM PAH WHERE FMR_Fund_Number = \"312\" AND Outbound_Composition_Code = \"MDCAT\" AND Business_Data_Date = (SELECT Business_Data_Date FROM PAH ORDER BY Business_Data_Date DESC LIMIT 1) AND Composition_Sub_Code <> \"TAXADV\" ORDER BY Record_Order ASC"    assetAlloc := AssetAllocations{}    err := ffDB.Select(&pahGroup, pahQuery)    fmt.Println("pahQuery AssetAllocation error: ", err)    assetAlloc.AssetAll = pahGroup    return assetAlloc}
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信