System.Data.ConstraintException: 未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。我在创建强类型数据集时直接从拖拉存储过程到vs.net的数据集设计器,再用web service去填充这个强类型数据集,在浏览webservice时却出现:System.Data.ConstraintException: 未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。1,存储过程用到的表,有主键的,我在强类型数据集里指定了主键(和原表相同),
比如有表A,B,C
A
(Aguid,...)
B
(Buid,Aguid,...)
C
(Cguid,Bguid,,,)在存储过程中
select * from aselect b.*
from b inner join a
on b.Agui=a.Aguidselect c.*
from c inner join b
inner join b
on c.Bguid = b.Bguid问题出现在什么地方,怎么样改2,treeView 可以多选,
a,首先想知道有没有节点被选中
b,怎么样知道选中了那个,

解决方案 »

  1.   

    你的存储过程是什么阿
    (1)一般存储过程可以有多个查询,但最好只有一个返回的集合
       你的存储过程怎么这么乱,返回那么多行来不不同查询的纪录,
       你叫Dataset怎么存
    (2) INNER JOIN不是你那么用的
        select a.*,c.name from a 
        inner join b
        on a.id = b.aid
        inner join c
        on a.id = c.aid
    (3) 多表联合查询的时候尽量不要用联合查询,否则会产生迪卡尔集,
        你可以用子查询
        如果非要用联合查询的时候尽量用left join 和right join
        因为inner join会产生大量冗余的查询结果公司关门了,我要走了,第二个问题没有时间回答了,不好意思
      

  2.   

    在给强类型数据集赋值时,出现这个错误,为什么,怎么解决?
    System.Data.ConstraintException: 未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值,