2013-02-05 16 views
5

एंड्रॉइड एसक्यूएलएट में मेरे पास एक टेबल MyTable थी। गलती से मैंने डीबी को अपग्रेड करने के बाद इसे छोड़ दिया।एसक्यूएलटीई ड्रॉप टेबल रोल

यदि मैं संभव हो तो ड्रॉप तालिका को वापस रोल कैसे कर सकता हूं।

कोई भी अच्छा उत्तर स्वीकार किया जाएगा।

धन्यवाद।

+0

संबंधित: https: // stackoverflow.com/questions/454942/undelete-accidentally-deleted-records-in-sqlite3 –

उत्तर

2

ड्रॉप टेबल एक पुनर्प्राप्ति योग्य कार्रवाई नहीं है।

SQLite documentation से:

ड्रॉप टेबल बयान एक मेज CREATE TABLE बयान से जोड़ा निकाल देता है। निर्दिष्ट नाम तालिका का नाम है।

गिराया गया तालिका पूरी तरह से डेटाबेस स्कीमा और डिस्क फ़ाइल से हटा दी गई है। तालिका को पुनर्प्राप्त नहीं किया जा सकता है। तालिका से जुड़े सभी इंडेक्स और ट्रिगर्स भी हटा दिए जाते हैं।

यदि आप उस डेटा को वापस चाहते हैं, तो आपको इसे स्क्रैच से फिर से बनाना होगा (या यदि संभव हो तो बैकअप से)।

+0

स्क्रैच क्या है। – Unknown

+0

@ कोबरा: "शुरुआत से" जिसका मतलब है "शुरुआत से"। – paxdiablo

+0

ओह धन्यवाद मुझे यह मिला। उत्तर पाउल के लिए – Unknown

3

क्षमा करें, नहीं।

आप "सम्मिलित करें" या "हटाएं" जैसे डीएमएल विवरणों को प्रतिबद्ध या रोलबैक कर सकते हैं (बशर्ते आप इसे लेनदेन के भीतर करते हैं)।

दुर्भाग्यवश, आप "डीएलएल कथन" या "ड्रॉप टेबल" जैसे डीडीएल कथन को रोलबैक नहीं कर सकते हैं।

पुस्तिका से:

ड्रॉप तालिका बयान को हटा एक तालिका बनाने के टेबल बयान के साथ जोड़ा गया। निर्दिष्ट नाम तालिका का नाम है। गिराई गई तालिका डेटाबेस स्कीमा और डिस्क फ़ाइल से पूरी तरह से हटा दी गई है। तालिका पुनर्प्राप्त नहीं की जा सकती है। से जुड़े सभी इंडेक्स और ट्रिगर्स भी हटा दिए जाते हैं।

पुनश्च:

यह लिंक, की चर्चा "DDL", "DML" और संबंधित acronyms यदि आप रुचि रखते हैं:

+0

धन्यवाद। – Unknown

+1

यह सच नहीं है। यदि आप एक लेनदेन के अंदर एक ड्रॉप टेबल टिप्पणी जारी करते हैं, तो आप इसे रोलबैक करके वापस प्राप्त कर सकते हैं। हालांकि, मुझे नहीं लगता कि ओपी क्या कर रहा है, इसलिए यह वास्तव में उनके प्रश्न के लिए प्रासंगिक नहीं है। –

संबंधित मुद्दे