我有480條對此我只有一個叫MY_BOOK表執行使用後記組件在Delphi 2010如何加快更新SQL
更新SQL更新數據更新的SQL語句,但與MY_BOOK_HEADER表的連接。下面是更新SQL,它需要81秒來執行所有480個更新SQL語句。任何想法如何提高這480個更新SQL語句的速度?
更新SQL:
Update MY_BOOK MB SET BOOK_NAME = 'Book Name1' , BOOK_DESCRIPTION = 'Book Desfcription1'
Where MB.BOOK_TYPE = 4 And
Exists (Select 1 from MY_BOOK_HEADER MBH
Where
MBH.HEADER_BOOK_CODE = '127518010109038'
And MBH.FK_BOOK_GROUP = '{79B79C33-CE56-4084-912B-6DD9F70B3DC4}'
And MBH.PK_BOOK_HEADER = MB.SK_BOOK_HEADER
);
你能詳細說明爲什麼你需要480個嗎?這些陳述之間有什麼變化? – Mureinik
可能缺乏索引。如果你解釋你的查詢計劃,我會打賭涉及到TABLE SCAN。 – duffymo
我從excel文件導入數據,因此出現一個循環,在那個循環中,很多SQL正在執行,並且正在減慢應用程序的運行速度,所以我只將所有SQL保存在ADScript組件中,並且一旦數據收集完成,那麼我正在執行它們 - > ADScript.ValidateAll;然後ADScript.ExecuteAll; –