0
A
回答
1
完成一個工作單元(或更早的時候,如果不再需要它),您應該關閉語句(和連接)。您可以重新使用語句的示例處於緊密的循環中,您需要使用不同的輸入值執行相同的查詢(例如批量插入)。在這種情況下,您需要在循環外部準備語句,並在循環完成後關閉語句。
你不應該試圖堅持陳述(或連接)長於一個單位的工作;試圖重新使用內部代碼可能會導致不透明和難以理解的代碼,大量的鍋爐板和難以追蹤資源泄漏或其他錯誤。
唯一的例外是當您使用連接池實現(有時也提供語句池)。在那裏你不必自己想想(除了池的正確配置外),因爲你會在自然邊界上關閉一個聲明和一個連接。而不是真正關閉他們返回到連接(或語句)池。
相關問題
- 1. 在什麼情況下,表單方法應該是GET,它應該是什麼情況POST
- 2. 如何在特殊情況下關閉文件?
- 3. 特殊情況下where子句的更好方法是什麼?
- 4. XSD:特殊情況下
- 5. VC維,特殊情況下
- 6. 在什麼情況下,超類不應該是抽象的?
- 7. 這裏有什麼特殊情況?
- 8. 那裏有什麼特殊情況?
- 9. 爲什麼'這'不是它在這種情況下應該是什麼?
- 10. 警報對話框在不按下的情況下關閉anything_android
- 11. 是否可以在不關閉流的情況下關閉Reader?
- 12. 爲什麼POJO應該是普通而不是特殊的?
- 13. 這種情況下unique_ptr的行爲應該是什麼?
- 14. 在這種情況下應該是什麼數據類型?
- 15. 如何在不返回index.html的情況下關閉警報?
- 16. NSLocalizedString特殊情況
- 17. re.split()特殊情況
- 18. 什麼情況下phys_base不是0?
- 19. 數據應該描述自己嗎?在什麼情況下最好是不是?
- 20. 我應該嘗試修復特殊情況還是隻抓住stackoverflow錯誤在這種情況下?
- 21. ResumeThread不是在這個特殊的情況下工作
- 22. 對於這種特殊情況下
- 23. 你如何處理特殊情況下
- 24. 特殊情況下一列的總和
- 25. 如何在特殊情況下
- 26. 什麼是objc_setAssociatedObject()以及在什麼情況下應該使用它?
- 27. 爲什麼我的正則表達式在這種特殊情況下
- 28. 默認情況下庫構建系統是否應該關閉斷言?
- 29. 在什麼情況下需要關閉HTTP連接?
- 30. 在寫入/關閉由對等關閉的java.net.Socket的情況下會發生什麼情況?
準備好的陳述的重點在於它們被重複使用。重新使用預準備語句可避免服務器每次都必須解析語句並創建執行計劃。只有當你真的完成了它們的時候,你才應該關閉語句。 – 2013-12-14 01:57:35
@MikeW對於Web服務器,何時應該關閉語句? –
@MikeW我懷疑這是使用準備語句的主要原因。我很確定這是因爲參數化查詢來防止SQL注入。 –