sql-server – 数据库设计:艺术或头痛(管理关系)

我在过去的经历中看到,大多数人不会在表格中使用物理关系,他们会尝试记住它们并仅通过编码来应用它们.

这里的“物理关系”指的是主键,外键,检查约束等.

在设计数据库时,人们试图在纸上标准化数据库并记录下来.就像,如果我必须为营销公司创建数据库,我将尝试了解其要求.
例如,哪些字段是必填字段,哪些字段仅包含(a或b或c)等.

当所有事情都清楚的时候,为什么大多数人都害怕受到限制?

>他们不想管理事情吗?
>他们缺乏知识吗?
(我不认为是这样)?
>他们对未来没有信心吗?
问题?
>管理所有这些实体真的很难吗?

你认为是什么原因?

解决方法

我总是让DBMS强制执行主键和外键约束;我经常添加检查约束.就我而言,数据太重要,无法存储存储不准确数据的风险.

如果您将数据库视为一系列存储的真正逻辑命题,您将看到如果数据库包含错误命题 – 错误 – 那么您可以争论任何您想要的结论.鉴于错误的前提,任何结论都是正确的.

为什么其他人不使用PK和FK约束等?

有些人不知道它们的重要性(因此缺乏知识肯定是一个因素,甚至是一个主要因素).其他人担心他们的性能会花费太多,忘记了必须修复的一个错误可能会因为没有让DBMS为您进行检查而节省了所有时间.我认为,如果当前的DBMS无法很好地处理它们,那么可能(可能)是时候更改DBMS了.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...