对于具有外键约束的客户表、订单表而言,客户编号是主键
如果更改了某个客户的客户编号,ADO.NET向数据源提交更新时,先提交父表还是子表?
我试了一下,先提交哪个表都会失败呢?
先提交父表更改呢,因为子表有引用,改不了
先提交子表更改呢,又因为父表没有新客户编号值,所以,也改不了
请问,到底是怎么提交的?
如果更改了某个客户的客户编号,ADO.NET向数据源提交更新时,先提交父表还是子表?
我试了一下,先提交哪个表都会失败呢?
先提交父表更改呢,因为子表有引用,改不了
先提交子表更改呢,又因为父表没有新客户编号值,所以,也改不了
请问,到底是怎么提交的?
解决方案 »
- |ZYCWPF| 如何记录RichTextBox的操作过程 第二贴
- ToolStripMenuItem怎么得到他的上一级菜单
- 数组中连续相同的元素个数
- 设计xml,使其作为规范,在xml中写入sql语句来解决多表接连问题,能动态生成sql语句来查询数据库。
- winform中session的使用
- 后台SendMessage,为什么不成功?
- .Net Clickonce 发布出错,提示:因为某项目未能生成,所以无法发布。分不多了,见谅
- c#如何写程序遍历系统中的网页浏览器啊?
- 如何重写窗体的最小化按扭?(以小见大)
- 如何使文本框textBox不回显
- 有关修改主键的update语句的一点困惑和指正
- Socket传送文件发生乱码
主键就是不能用来做修改的,如果要修改,就不能做主键。你可以增加一个字段“客户ID”,“客户ID”做主键,用来做关联,
这个“客户ID”在增加记录时生成,生成后就不能再修改,以后永远都不变。可以另外增加一个 “客户编码”字段,这个字段允许修改,但不做主键,不做关联,
类似于辅助输入那种。
总之,在表的设计规则里,主键字段是不允许修改的,
能修改的字段不要做主键,
这是一条最基本的数据库设计规则,
但很多人都不知道这条规则。