আমি কীভাবে যাচাই করতে পারি যে কোনও এসকিউএল ডিবি 3 ফাইল বৈধ / সামঞ্জস্যপূর্ণ


24

আমার কাছে কয়েকটি স্ক্লাইট সংস্করণ 3 ডিবি 3 ফাইল রয়েছে যা আমি লাইভ চলমান উত্পাদন সিস্টেমটি অনুলিপি করেছি (আমি খারাপ সিসাদমিন খারাপ সিসাদমিন জানি) বিভিন্ন কারণে। আমি চালাতে পারি এমন কিছু স্ক্লাইট কমান্ড রয়েছে যা যাচাই করবে যে সমস্ত ডেটা এই ফাইলগুলির বাইরে পড়তে পারে (এটি কিছুক্ষণ সময় নেয় কিনা তাতে আমার আপত্তি নেই)।

আমি এমন কিছু পার্ল হ্যাক করার কথা ভাবছিলাম যা সমস্ত ডেটা ফেলে দেয় এবং তারপরে নতুন ফাইলগুলিতে পুনরায় আমদানি করে। আমি মনে করি স্ক্লাইটটি যদি একটি দুর্নীতিগ্রস্থ ডেটার মুখোমুখি হয় তবে একটি ব্যতিক্রম ছুঁড়ে ফেলবে। একটি ভাল উপায় আছে কি?

আমি সেন্টস 5.3 এবং স্ক্লাইট -3.3.3-2

উত্তর:


34

আমি মনে করি আপনি চেষ্টা করতে চান:

pragma integrity_check;

ডকুমেন্টেশন থেকে :

এই প্রগমা পুরো ডাটাবেসটির অখণ্ডতা পরীক্ষা করে। অখণ্ডতা_চেক প্রগমা আউট-অফ-অর্ডার রেকর্ডগুলি, অনুপস্থিত পৃষ্ঠাগুলি, ত্রুটিযুক্ত রেকর্ডগুলি, অনুপস্থিত সূচক এন্ট্রিগুলি এবং অনন্য এবং অনুলিপি ত্রুটিগুলি অনুসন্ধান করে। যদি সততা_চেক প্রাগমা সমস্যাগুলি খুঁজে পায়, স্ট্রিংগুলি ফিরে আসে (প্রতি সারিতে একক কলাম সহ একাধিক সারি হিসাবে) যা সমস্যাগুলি বর্ণনা করে। [...]

আরও দেখুন PRAGMA quick_check কমান্ড যা PRAGMA integrity_check পরীক্ষা সাধন করে কিন্তু অনেক দ্রুত চালায়।


3
আরও দেখুন sqlite.org/faq.html#q21
টেডি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.