一个表中的数据被ID引用到另一个表。例如,我有一张ids为1-50的国家表。在另一个表“用户”我有一个id的引用即。 state = 4.当我需要将数据更新回“User”时,如果状态发生变化,我的代码是否应该知道状态数据的编号?换句话说,如果新状态是Alabama id = 1,我应该在提交到数据库之前进行枚举?或者DataAccess层是否应该在数据表中搜索新状态的id?
答案 0 :(得分:1)
具体情况取决于你的前端是什么,但一般来说你应该传递id和州名,所以当用户选择Alabama时,id 1会回到你的DAL,这样就可以设置用户表中的StateID直接指向没有其他选择的状态。
例如,如果前端是网页,
<select>
<option value=1>Alabama</option>
...
</select>
答案 1 :(得分:1)
如果数据库在引用状态主键列的用户表列上具有正确的外键,则永远不需要在db中执行其他搜索检查。拥有此功能将始终确保您的用户记录保持合法值。