有劳各位,目前的一个问题:
有外键约束的两个表,主表,约束表
首先在主表中插入了数据,然后再在被约束表中插入相应的数据,还是提示如题所示错误。
打个比方:
表 A, 字段 ID
表 B, 字段 AID
B.AID 约束于 A.ID
我现在要在 B 表中插入一条数据, B.AID 的值, 在 A 表中已经存在
插入一条带有 B.AID = 5 的记录,此时 A.ID = 5 的记录已经存在了
但是还是如题所示错误…
补充:
不好意思,个人对数据库的了解并不是很专业,所以在表述上或存在不准确的地方,请见谅!
但是,我相信大家是能理解意思的,有劳各位指教!!!
------解决方案--------------------------------------------------------
因为你插入的这个外键,这那个表找不到对应的数据。
比如你增加B.aid这个字段,但aid在A表中没有对应的数据,所以报错
这就是外键的作用
------解决方案--------------------------------------------------------
外键约束起作用了,其实可以用代码来检测外键。
------解决方案--------------------------------------------------------
"查询分析器" 里都运行了 肯定不会是sql的问题了
------解决方案--------------------------------------------------------
先给主键表插入数据
冲突发生于数据库那个表
------解决方案--------------------------------------------------------
忙乎半天把你代码贴出来吧。描述也不够清楚。如果主键正常存在,外键引用是不会不成功的。看你代码如何写的。
------解决方案--------------------------------------------------------
你在哪儿出现这个问题的?
源代码里
在相关 执行语句 类似 executenonquery(sql) 放断点 语句放到一个try里
获取sql语句 在查询分析器 执行 如果正确,
f10 或 f11 逐行执行 看看有没有 捕捉到异常
从你的描述 简直见鬼了
------解决方案--------------------------------------------------------
你用的Entity FrameWork?
------解决方案--------------------------------------------------------
做个transection吧
------解决方案--------------------------------------------------------
路过顶!!!
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
建议不要设置什么东西,这样容易出问题