SQL Server Compact Edition 3.5的级联删除速度是否太慢,还是可以提高性能?

时间:2012-06-19 01:16:34

标签: sql performance database-design sql-server-ce

我设置了用于级联删除的外键,并且运行删除命令大约需要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的新手。所有主键都已编制索引。我在外键上添加了没有帮助的索引。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

根据this discussion,如果您的外键上有复合索引,您可能希望查看只包含外键字段的简单索引。