Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

काटे गए टेबल से डेटा कैसे रिकवर करें

यदि आप अपने कोड में TRANSACTIONS का उपयोग करते हैं, तो TRUNCATE को वापस लाया जा सकता है। यदि कोई लेन-देन नहीं है और TRUNCATE ऑपरेशन प्रतिबद्ध है, तो इसे लॉग फ़ाइल से पुनर्प्राप्त नहीं किया जा सकता है। TRUNCATE DDL ऑपरेशन है और यह लॉग फ़ाइल में लॉग इन नहीं है।

DELETE और TRUNCATE दोनों को TRANSACTION से घिरे होने पर वापस रोल किया जा सकता है यदि वर्तमान सत्र बंद नहीं है। यदि TRUNCATE को TRANSACTION से घिरे क्वेरी संपादक में लिखा गया है और यदि सत्र बंद है, तो इसे वापस नहीं किया जा सकता है लेकिन DELETE को वापस रोल किया जा सकता है।

USE tempdb
GO
-- Create Test Table
CREATE TABLE TruncateTest (ID INT)
INSERT INTO TruncateTest (ID)
SELECT 1
UNION ALL
SELECT 2
UNION ALL
SELECT 3
GO
-- Check the data before truncate
SELECT * FROM TruncateTest
GO
-- Begin Transaction
BEGIN TRAN
-- Truncate Table
TRUNCATE TABLE TruncateTest
GO
-- Check the data after truncate
SELECT * FROM TruncateTest
GO
-- Rollback Transaction
ROLLBACK TRAN
GO
-- Check the data after Rollback
SELECT * FROM TruncateTest
GO
-- Clean up
DROP TABLE TruncateTest
GO


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर कुंडी - अन्य कुंडी के बारे में जानने के लिए

  2. एक पिवट से मूल्यों को कैसे एकत्रित करें?

  3. नेटबीन्स में हाइबरनेट रिवर्स इंजीनियरिंग SQL सर्वर टेबल नहीं ढूंढ सकता है

  4. SQL सर्वर डेटाबेस में सभी तालिकाओं में पहचान कॉलम में प्राथमिक कुंजी बाधा कैसे जोड़ें - SQL सर्वर / TSQL ट्यूटोरियल भाग 63

  5. एसएसआईएस घटक संकलित नहीं कर सकता; विजुअल स्टूडियो 2008 में अनुपलब्ध असेंबली