日期:2014-05-19  浏览次数:20558 次

一个关于sql数据库数据修改的问题
我建了两个表Class和Article,我想要修改ClassName表中的ClassName列的值,可是也要连这修改Article中ClassName的值.不知道为什么我先修改了Aricle表在修改Class表,却提示出错.他们如下
Class
(ClassId   int,
  ClassName   char(40)   primark   key,
  ClassNum   int,
)
Article
(
  ArticleId   int,
  ArticleName   char(40)
  ClassName   char(40)   references   Class(ClassName),
)
要怎么才可以改过来呢?

------解决方案--------------------
1、先更正你数据表设计问题:
Article
(
ArticleId int,
ArticleName char(40),
ClassId int references Class(ClassId) --表与表之间一般使用id进行连接
)

2、因为 Article-ClassId是references Class-ClassId,所以受到一个外键约束,
当你更新article-classid的内容必须属于 class-classid的表内容。
ps:不知道有没有表达清楚

------解决方案--------------------
在设计状态下选中级联更新,则修改Class就行了,修改后Aticle会自动改过来。

你的数据库设计有问题,该用id做主键和外键