我刚开始我的新工作,看了DBM后我惊呆了。真是一团糟。
现在,我想做的第一件事是在表列的顺序上获得一些一致性。我们通过.dacpac发布新的数据库版本。我的同事告诉我,更改列的顺序会迫使MSSQL创建一个临时表来存储所有数据。然后MSSQL创建一个新表,并将所有数据插入该表中。
假设我的服务器只运行2GB的RAM,硬盘上还有500MB的存储空间。整个数据库的重量为20GB。更改列的顺序可能会引起问题(与内存有关(吗?我同事的说法正确吗?
我找不到任何好的问题来源。谢谢
您不应该"一个表接一个表"。
您应该保持表的原样,如果您不喜欢某个表的列顺序,只需创建一个view
,根据需要对列进行重新排序。
不仅更改列的顺序会导致重新创建表,还会重新创建所有的indexes
,还会遇到FK
约束的问题。
毕竟,你除了造成伤害之外,什么也得不到。您将浪费服务器资源,使您的表暂时不可访问,列也不会像您定义的那样存储。无论如何,在内部,它们将以"var fix"格式存储(分为固定长度和可变长度(