mysql数据库中有表的列有很多,想实现将表分成两张表存储同一个姓名的信息怎么办呀

例如:要记录一个人的所有信息(姓名,年龄,婚否,出生日期,...)等有几十个列要描述这个人的所有信息,由于描述的信息过多,我想将其分成两个表,一个表A,一个表B,表A中有姓名,年龄等一些字段,表B中有姓名,出生日期,婚否等一些字段,如何操作表A添加或删除等操作同时表B的信息也随着添加或删除
最新回答
未与你

2024-11-27 14:16:15

这个就不是数据库的问题了,这要看你程序是什么样的,对于SSH框架来说
在数据库表映射对象里面可以增加one-to-one的关联,
保存时相关信息还是要存放到两个对象里面的,删除时只删除一个就可以。

最笨的方法就是,保存时各存各的,删除时,按照姓名找到另一个表的相关数据,一并删除。
题外话:为什么要拿姓名做连接主键呢?(考虑到重名)为什么非要拆成两个表呢?(完全没必要的啊,几十个列的表我也是见过的,知道哪是哪就可以了)
追问
谢谢,我有点想通了可以放在一个表中,无非是有几十个列的信息,弄关联的东西我也不太会
暗恋是最省钱的

2024-11-27 14:29:04

创建一个外键,级联更新、级联删除
菊花般的笑容

2024-11-27 17:32:28

写一个after update的触发器就可以实现了。