以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]使用sql查询表的时候提示这些列不具有唯一值 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=92610) |
-- 作者:whyxd -- 发布时间:2016/11/8 12:40:00 -- [求助]使用sql查询表的时候提示这些列不具有唯一值 使用sql查询表提示 system.argumentexception:这些列当前不具有唯一值。 在预览的时候或者直接在sql里面执行查询是可用的,可以正常显示。
老师请指教! |
-- 作者:有点蓝 -- 发布时间:2016/11/8 14:03:00 -- 贴出sql语句看看 |
-- 作者:whyxd -- 发布时间:2016/11/8 14:16:00 -- 怎么提交回复总是报错???? |
-- 作者:whyxd -- 发布时间:2016/11/8 14:18:00 -- s e l e c t t1.产品编码,t1.材料编码,t1.材料名称,t1.规格型号,t1.辅助属性,t1.数量,t2.FYear as 会计年度,t2.FPeriod as 会计期间,sum(t2.FEndBal)/sum(t2.FEndQty) as 单价,t1.数量*(sum(t2.FEndBal)/sum(t2.FEndQty)) as 金额,t2.fitemid from {BOM明细表} t1 left join {IcBal} t2 on t1.FItemID = t2.FItemID where t2.fendqty > 0 group by t1.产品编码,t1.材料编码,t1.材料名称,t1.规格型号,t1.辅助属性,t1.数量,t2.FYear,t2.FPeriod,t2.fitemid [此贴子已经被作者于2016/11/8 14:18:24编辑过]
|
-- 作者:whyxd -- 发布时间:2016/11/8 14:19:00 -- s e l e c t t1.产品编码,t1.材料编码,t1.材料名称,t1.规格型号,t1.辅助属性,t1.数量,t2.FYear as 会计年度,t2.FPeriod as 会计期间,sum(t2.FEndBal)/sum(t2.FEndQty) as 单价,t1.数量*(sum(t2.FEndBal)/sum(t2.FEndQty)) as 金额,t2.fitemid from {BOM明细表} t1 left join {IcBal} t2 on t1.FItemID = t2.FItemID where t2.fendqty > 0 group by t1.产品编码,t1.材料编码,t1.材料名称,t1.规格型号,t1.辅助属性,t1.数量,t2.FYear,t2.FPeriod,t2.fitemid |
-- 作者:有点蓝 -- 发布时间:2016/11/8 14:29:00 -- 那把上面sql做成视图调用吧 |
-- 作者:whyxd -- 发布时间:2016/11/8 14:45:00 -- 哦,好!
|
-- 作者:whyxd -- 发布时间:2016/11/8 15:21:00 -- 回复:(有点蓝)那把上面sql做成视图调用吧 我将语句做成视图,视图名字cpclcb sql 查询表 直接使用语句:s e l e c t * from cpclcb 结果还是一样,未能启用约束值,一行或多行中包含违反非空、唯一或外检约束的值!
|
-- 作者:有点蓝 -- 发布时间:2016/11/8 15:34:00 -- 试试sql里添加一下主键列 |
-- 作者:whyxd -- 发布时间:2016/11/8 16:04:00 -- 好吧,我把所有主键都加入sql,执行没有问题了。。。谢啦 蓝老师。。。 |