Peki bu iki komut arasındaki fark nedir?
Kısaca, maddeler halinde yazalım.
- Öncelikle, Truncate kavramı ile bir şarta bakmaksızın tüm tablomuzu boşaltırız. Delete komutunda Where şartı ile belli şartlara bağlayabiliriz.
- Bence en önemli farklarından birisidir şimdiki maddemiz, Truncate Table yapınca, o tablodaki identity kolonumuz en baştan başlar. Ama Delete yaparsak, en son kaçıncı id'de kalmışsa, oradan devam eder.
- Truncate Table, Transaction içerisinde kullanılırsa ve işlemimiz rollback olursa geri alınamazlar. Delete komutunda geri alabiliriz.
- Truncate Table yaptığımızda, eğer o tablo üzerinde Delete Trigger'i varsa, bu trigger tetiklenmez. Delete komutlarında ise tetiklenir.
İşte Truncate Table ile Delete komutları arasındaki en temel fark bunlardır. Son olarak da syntaxlarını, nasıl yazıldıklarını gösterelim;
- TRUNCATE TABLE Tablo1
- DELETE FROM Table1
şart koymak istersek,
- DELETE FROM Table1 WHERE ID=5
5 yorum:
teşekkürler faydalı bir açıklama oldu.
Teşekkürler elinize sağlık net ve faydalı bir anlatım olmuş.
eyvallah kısa ve öz
TEŞEKKÜRLER
Yorum Gönder