请教一个数据库设计的问题有一个xdc_material表,其中的类型字段数据引用于另外一个xdc_material_type表,如图所示:我想给予用户自由更改xdc_material_type类型表的权力,因为这样更方便灵活,但是我发现如果产生了一系列的记录之后,如果用户更改了类型的名称,或者干脆删除了某个类型,就会造成xdc_material表中记录的混乱。比如xdc_material_type类型表中原本有染料这一分类,而xdc_material表中也有分类于染料的100条记录,但如果用户某天删除了xdc_material_type表中的染料分类,那么原先的记录该如何处理才是合理的做法呢?完全不做更改在技术上好像是最稳妥的,但这样就会造成用户在分类搜索的时候再也找不到那100条记录了;而如果进行相对的修改的话(比如把那100条有“染料”分类记录的相应字段都清空),又很容易产生不可预知的问题——因为这些记录频繁的被各种函数大量调用。现在我只能采用我所能想到最保守无能的做法:只允许用户新增类型,但不允许更改和删除。请问有什么比较好的方法解决这一问题吗?谢谢。