在设计数据库时,我更喜欢以下内容:
没有代码的直接表访问(但是从存储过程和视图和函数可以)
包含所有列的每个表的基本视图
每个表的扩展视图,包括查找列(类型,状态等)
所有更新的存储过程
任何复杂查询的函数
这允许DBA直接使用表(添加列,清理内容,注入数据等)而不会干扰代码库,并且它使代码库与对表所做的任何更改(临时或其他)隔离开来
以这种方式做事可能会有性能损失,但到目前为止它们并没有太大意义 - 绝缘层的好处已经过几次救命
在设计数据库时,我更喜欢以下内容:
没有代码的直接表访问(但是从存储过程和视图和函数可以)
包含所有列的每个表的基本视图
每个表的扩展视图,包括查找列(类型,状态等)
所有更新的存储过程
任何复杂查询的函数
这允许DBA直接使用表(添加列,清理内容,注入数据等)而不会干扰代码库,并且它使代码库与对表所做的任何更改(临时或其他)隔离开来
以这种方式做事可能会有性能损失,但到目前为止它们并没有太大意义 - 绝缘层的好处已经过几次救命