我设置了用于级联删除的外键,并且运行删除命令大约需要30分钟。这是我正在使用行计数删除的简化视图:
DELETE from Directories WHERE Type = 1
结构:
Directory
table :(从WHERE
子句返回的1.2K行)
File
外键(50K行)的 + --- + DirectoryID
表
Tag
外键(28K行)的 + ------------- + FileID
表
这需要28分钟才能运行。
我应该避免使用多层级联删除吗?或者我可以做些什么来提高性能?没有外键,我可以在不到一秒的时间内删除50K +行。
我是SQL和SQL Server Compact Edition 3.5的新手。所有主键都已编制索引。我在外键上添加了没有帮助的索引。任何帮助将不胜感激。