Skill

SQLite এবং ফাইল ম্যানেজমেন্ট

এসকিউলাইট (SQLite) - Database Tutorials

339

SQLite একটি সার্ভারবিহীন, ফাইলভিত্তিক ডাটাবেস সিস্টেম, যেখানে সমস্ত ডেটা একটি একক ফাইলে সংরক্ষিত হয়। এটি ডাটাবেস ম্যানেজমেন্ট সিস্টেম (DBMS) হলেও, এটি অন্য DBMS এর মতো কোন সার্ভারের প্রয়োজন না করে একটি সিঙ্গেল ফাইলে কাজ করে। SQLite ডাটাবেস ফাইলের মাধ্যমে ডেটা সংরক্ষণের সুবিধা দেয়, যা কার্যকরভাবে ডেটাবেস ম্যানেজমেন্ট ও ফাইল ম্যানেজমেন্টের মধ্যে একটি সেতু হিসেবে কাজ করে।

এখানে SQLite ফাইল ম্যানেজমেন্ট এর ধারণা এবং কিভাবে এটি ডাটাবেস ফাইলের সাথে কাজ করে তা নিয়ে আলোচনা করা হবে।


SQLite ফাইল ম্যানেজমেন্ট কীভাবে কাজ করে?

SQLite একটি ফাইলভিত্তিক ডাটাবেস সিস্টেম হওয়ায়, একটি SQLite ডাটাবেস আসলে একটি ফাইল (যেমন: .db বা .sqlite ফাইল) যা ডেটার সংরক্ষণ, ইনডেক্সিং, ট্রানজেকশন এবং অন্যান্য সমস্ত ডাটাবেস সম্পর্কিত অপারেশন পরিচালনা করে। ডাটাবেস ফাইলের মধ্যে সমস্ত টেবিল, রেকর্ড, ইনডেক্স এবং অন্যান্য কাঠামো সংরক্ষিত থাকে।

SQLite ডাটাবেস ফাইলের বৈশিষ্ট্য

  1. ফাইলভিত্তিক স্টোরেজ:
    • SQLite ডাটাবেস ফাইলটি সাধারণত .db, .sqlite, .sqlite3 বা অন্যান্য এক্সটেনশনে থাকতে পারে।
    • একটি ডাটাবেস ফাইলটি একাধিক টেবিল, ইনডেক্স, এবং ডেটার গঠন ধারণ করে।
  2. ট্রানজেকশন সমর্থন:
    • SQLite একাধিক অপারেশন ট্রানজেকশন হিসেবে সমর্থন করে, যেখানে সমস্ত পরিবর্তন একযোগে করা হয়, এটি ডাটাবেস ফাইলের ভিতরে করা হয়।
  3. ডেটার অবিচ্ছেদ্যতা:
    • SQLite স্বয়ংক্রিয়ভাবে ডেটার সংরক্ষণ এবং সুরক্ষা নিশ্চিত করে, যা ডাটাবেস ফাইলের ভিতরে সংরক্ষিত থাকে এবং কোন ধরনের হারানো বা ব্যর্থতার পরিস্থিতিতে পুনরুদ্ধার করা সম্ভব।
  4. পোর্টেবিলিটি:
    • SQLite ফাইলটি সহজে স্থানান্তরযোগ্য, কারণ সমস্ত ডেটা একটি সিঙ্গেল ফাইলে সংরক্ষিত থাকে। আপনি ডাটাবেস ফাইলটিকে অন্য সিস্টেমে সহজে স্থানান্তর করতে পারেন এবং সেখানেও কাজ করতে পারবেন।

SQLite ফাইল ম্যানেজমেন্ট এবং এর অপটিমাইজেশন

১. ডাটাবেস ফাইল স্থানান্তর:

  • SQLite ডাটাবেস ফাইলটি এক জায়গা থেকে অন্য জায়গায় সহজেই স্থানান্তরিত হতে পারে, কারণ এটি একটি স্ট্যান্ড-অলোন ফাইল। তবে, ডেটাবেস ফাইলের উপর কাজ করার সময় এই স্থানান্তর করা উচিত নয়, কারণ অপারেশন চলাকালীন ডাটাবেস ফাইলটি সম্ভবত লক করা থাকবে।

২. VACUUM কমান্ড:

  • একটি ডাটাবেস ফাইল ব্যবহারের পর, অনেক সময় ফাইলের মধ্যে অব্যবহৃত স্পেস জমে থাকতে পারে। VACUUM কমান্ড ফাইলের মধ্যে সমস্ত অব্যবহৃত স্পেস মুছে ফেলে এবং ডাটাবেস ফাইলটিকে পুনরায় কম্প্যাক্ট করে, যা পারফরম্যান্স উন্নত করতে সহায়তা করে।
VACUUM;

৩. ইন্ডেক্স এবং ক্যাশ সাইজ অপটিমাইজেশন:

  • ডাটাবেস ফাইলের পারফরম্যান্স উন্নত করতে ইন্ডেক্স ব্যবহার করা হয়। এর মাধ্যমে অনুসন্ধান আরও দ্রুত হয়। আপনি PRAGMA cache_size এবং অন্যান্য অপশন দিয়ে ক্যাশ সাইজ কনফিগার করতে পারেন, যা পারফরম্যান্সে উন্নতি করতে সহায়ক।
PRAGMA cache_size = 10000;  -- 10 MB ক্যাশ সাইজ

৪. সিঙ্ক্রোনাইজেশন কনফিগারেশন:

  • PRAGMA synchronous অপশন ব্যবহার করে SQLite-এ ডেটার সিঙ্ক্রোনাইজেশন স্তর পরিবর্তন করা যেতে পারে। এটি ট্রানজেকশনের পারফরম্যান্স উন্নত করতে পারে, তবে কিছুটা ঝুঁকি বাড়াতে পারে (ডেটা হারানোর সম্ভাবনা)।
PRAGMA synchronous = NORMAL;

৫. ফাইল সুরক্ষা:

  • SQLite একটি atomic commit পদ্ধতি ব্যবহার করে, যার মাধ্যমে ডেটা সুরক্ষা নিশ্চিত করা হয়। এটি টেবিলের মধ্যে পরিবর্তনগুলো সম্পন্ন করার আগে সমস্ত ট্রানজেকশন নিশ্চিত করে এবং ডাটাবেস ফাইলের নিরাপত্তা রক্ষা করে।

SQLite ডাটাবেস ফাইল ম্যানেজমেন্টের বেস্ট প্র্যাকটিস

  1. ফাইল লকিং: SQLite একটি সার্ভারবিহীন সিস্টেম, তাই একাধিক প্রোগ্রাম বা ব্যবহারকারী একযোগে ডাটাবেস ফাইলের উপর কাজ করলে Database Locking সমস্যা সৃষ্টি হতে পারে। এটি এড়াতে শুধুমাত্র একটি প্রোগ্রাম বা থ্রেডের মাধ্যমে ডাটাবেসের এক্সেস প্রদান করুন।
  2. ফাইল ব্যাকআপ: যেহেতু SQLite ফাইলভিত্তিক ডাটাবেস, ডেটাবেস ফাইলটি হারানো বা ক্ষতিগ্রস্ত হলে ডেটা ফিরে পাওয়া কঠিন হতে পারে। তাই নিয়মিত ব্যাকআপ রাখা গুরুত্বপূর্ণ।
  3. VACUUM ও REGULAR CLEANUP: ডেটাবেস ফাইলের সাইজ বাড়লে পারফরম্যান্স কমে যেতে পারে। VACUUM ব্যবহার করে ডাটাবেসের অব্যবহৃত স্পেস সরিয়ে নিন এবং সময়মতো ক্লিনআপ করুন।
  4. টেবিল ডিজাইন: ফাইল ম্যানেজমেন্টের জন্য ডাটাবেসের টেবিল ডিজাইন সঠিকভাবে করা গুরুত্বপূর্ণ। বড় টেবিল বা সঠিক ইনডেক্স ব্যবহার করা গুরুত্বপূর্ণ যাতে ডেটা দ্রুত অনুসন্ধান করা যায় এবং ফাইলের সাইজ অপ্টিমাইজড থাকে।

সারাংশ

SQLite একটি ফাইলভিত্তিক ডাটাবেস সিস্টেম যা ডেটাকে একটি সিঙ্গেল ফাইলে সংরক্ষণ করে। এর ফাইল ম্যানেজমেন্ট সহজ এবং নমনীয়, কারণ এটি একাধিক প্ল্যাটফর্মে কাজ করতে পারে এবং ডাটাবেস ফাইল সহজে স্থানান্তরযোগ্য। তবে, পারফরম্যান্স অপ্টিমাইজেশন এবং সঠিক ডাটাবেস ফাইল পরিচালনা কৌশল (যেমন VACUUM, indexing, PRAGMA cache_size) ব্যবহার করা প্রয়োজন যাতে ডাটাবেস ফাইলটি দ্রুত এবং নিরাপদ থাকে।

Content added By

SQLite একটি ফাইলভিত্তিক ডেটাবেস সিস্টেম, যা ডেটাবেস ফাইলের মাধ্যমে সমস্ত ডেটা সংরক্ষণ করে। এর মানে হলো, আপনার SQLite ডেটাবেস একটি একক ফাইলে থাকবে এবং আপনি সেই ফাইলের মাধ্যমে ডেটাবেসের তথ্য পরিচালনা করবেন। SQLite ডেটাবেজ ফাইলের ম্যানেজমেন্ট এবং ব্যাকআপ নেওয়া, ফাইল অপারেশন, এবং ডেটাবেস ফাইলের অবস্থান পরিবর্তন করা খুবই গুরুত্বপূর্ণ।


১. ডেটাবেস ফাইল তৈরি করা

SQLite ডেটাবেস তৈরি করার জন্য sqlite3 কমান্ড ব্যবহার করা হয়। একটি নতুন ডেটাবেস ফাইল তৈরি করতে, আপনাকে ডেটাবেস ফাইলের নাম এবং অবস্থান নির্ধারণ করতে হবে।

উদাহরণ ১: নতুন ডেটাবেস তৈরি করা

sqlite3 mydatabase.db

এটি একটি নতুন ডেটাবেস mydatabase.db তৈরি করবে এবং আপনাকে SQLite কমান্ড লাইন ইন্টারফেসে নিয়ে যাবে। যদি ডেটাবেসটি আগে থেকে না থাকে, তাহলে এটি নতুন একটি ডেটাবেস ফাইল তৈরি করবে।


২. ডেটাবেস ফাইলের অবস্থান পরিবর্তন করা

SQLite ডেটাবেস ফাইলটি কোনো নির্দিষ্ট অবস্থানে রাখতে হবে। আপনি যখন SQLite-এ কাজ করছেন, তখন এই ডেটাবেস ফাইলের অবস্থান পরিবর্তন করতে পারেন।

উদাহরণ ২: ডেটাবেস ফাইলের অবস্থান পরিবর্তন করা

sqlite3 /path/to/your/database/mydatabase.db

এটি /path/to/your/database/mydatabase.db অবস্থানে ডেটাবেস ফাইল খোলার জন্য ব্যবহার করা হবে।


৩. ডেটাবেস ফাইলের ব্যাকআপ নেওয়া

ডেটাবেস ফাইলের ব্যাকআপ নেওয়া SQLite ব্যবস্থাপনায় অত্যন্ত গুরুত্বপূর্ণ। SQLite-এর কমান্ড লাইন ইন্টারফেসে আপনি একটি ডেটাবেস ফাইলের ব্যাকআপ খুব সহজে নিতে পারেন।

উদাহরণ ৩: ডেটাবেস ব্যাকআপ করা

sqlite3 mydatabase.db ".backup mydatabase_backup.db"

এটি mydatabase.db ডেটাবেসের একটি ব্যাকআপ তৈরি করবে এবং নতুন ব্যাকআপ ফাইল mydatabase_backup.db তৈরি করবে।


৪. ডেটাবেস ফাইলের মান পরীক্ষা করা

SQLite ডেটাবেস ফাইলের অখণ্ডতা পরীক্ষা করার জন্য আপনি PRAGMA integrity_check কমান্ড ব্যবহার করতে পারেন, যা ডেটাবেসের ডেটার অবস্থা যাচাই করে।

উদাহরণ ৪: ডেটাবেস অখণ্ডতা পরীক্ষা করা

PRAGMA integrity_check;

এটি ডেটাবেসের অখণ্ডতা পরীক্ষা করবে এবং কোনো ত্রুটি বা সমস্যা থাকলে তা জানিয়ে দিবে।


৫. ডেটাবেস ফাইল থেকে ডেটা এক্সপোর্ট করা

SQLite-এ আপনি ডেটাবেস থেকে ডাটা এক্সপোর্ট করতে পারেন। একাধিক ফরম্যাটে (যেমন CSV, SQL, JSON) ডেটা এক্সপোর্ট করা সম্ভব।

উদাহরণ ৫: CSV ফরম্যাটে ডেটা এক্সপোর্ট করা

.mode csv
.output data.csv
SELECT * FROM employees;
.output stdout

এটি employees টেবিলের সমস্ত ডেটা data.csv ফাইলে এক্সপোর্ট করবে।


৬. ডেটাবেস ফাইল মুছে ফেলা

SQLite-এ আপনি যদি ডেটাবেস ফাইল মুছে ফেলতে চান, তাহলে আপনাকে সাধারণত ফাইল ম্যানেজমেন্টের মাধ্যমে এটি মুছে ফেলতে হবে, কারণ SQLite ডেটাবেসটি শুধুমাত্র একটি ফাইল।

উদাহরণ ৬: ডেটাবেস ফাইল মুছে ফেলা

SQLite ডেটাবেস ফাইলটি মুছে ফেলতে আপনার ফাইল সিস্টেমে গিয়ে সাধারণ ফাইল ম্যানেজমেন্ট ব্যবহার করুন:

rm mydatabase.db

এটি mydatabase.db ডেটাবেস ফাইলটি মুছে ফেলবে।


৭. ফাইল ফরম্যাট এবং কমপ্রেশন

SQLite ডেটাবেস ফাইল সাধারণত .db এক্সটেনশন দিয়ে থাকে, তবে আপনি যেকোনো এক্সটেনশন ব্যবহার করতে পারেন। এছাড়াও, আপনি SQLite ডেটাবেস ফাইলকে কমপ্রেস করে ছোট করতে পারেন। SQLite ডেটাবেস ফাইলগুলি এমনকি ZIP বা অন্যান্য ফরম্যাটে কমপ্রেস করা যেতে পারে।


সারাংশ

SQLite ডেটাবেস ম্যানেজমেন্টে ফাইলভিত্তিক একটি সিস্টেম ব্যবহৃত হয়, যার মাধ্যমে আপনি ডেটাবেস ফাইল তৈরি, অবস্থান পরিবর্তন, ব্যাকআপ, এক্সপোর্ট এবং ফাইল মুছে ফেলাসহ আরও অনেক কাজ করতে পারেন। এর পাশাপাশি, ডেটাবেস ফাইলের অখণ্ডতা পরীক্ষা করা এবং সঠিকভাবে ফাইল ম্যানেজমেন্ট ব্যবহার করা অত্যন্ত গুরুত্বপূর্ণ, যাতে ডেটাবেসের ডেটা নিরাপদ থাকে।

Content added By

SQLite ডাটাবেসের ব্যাকআপ এবং রিস্টোর প্রক্রিয়া খুবই সহজ এবং কার্যকরী। SQLite একটি ফাইলভিত্তিক ডাটাবেস, যার মানে হল যে আপনি ডাটাবেসের পুরো ফাইলটি কপি করে ব্যাকআপ নিতে পারেন এবং পরে সেই ব্যাকআপ থেকে ডাটাবেস পুনরুদ্ধার (restore) করতে পারেন।

SQLite ডাটাবেস ব্যাকআপ এবং রিস্টোর করার জন্য সাধারণত দুটি পদ্ধতি ব্যবহার করা হয়: একটি হল ডাটাবেস ফাইল কপি করে ব্যাকআপ নেওয়া, এবং অন্যটি হল SQLite-এর backup ফিচার ব্যবহার করে ব্যাকআপ নেওয়া


১. Database Backup (ব্যাকআপ নেওয়া)

পদ্ধতি ১: ডাটাবেস ফাইল কপি করে ব্যাকআপ নেওয়া

SQLite-এ ডাটাবেস ফাইলটি একটি সাধারণ ফাইল হিসেবে সংরক্ষিত থাকে, তাই আপনি শুধু সেই ফাইলটির কপি করে ব্যাকআপ নিতে পারেন।

  1. ডাটাবেস ফাইল কপি করা:
    • যদি আপনার ডাটাবেসের ফাইলটি mydatabase.db নামে থাকে, তবে আপনি এটি সরাসরি কপি করতে পারেন:

      Windows:

      copy mydatabase.db mydatabase_backup.db
      

      Linux/macOS:

      cp mydatabase.db mydatabase_backup.db
      
    • এটি mydatabase.db ডাটাবেসের একটি ব্যাকআপ ফাইল তৈরি করবে, যা পরে রিস্টোর করার জন্য ব্যবহার করা যাবে।

পদ্ধতি ২: sqlite3 কমান্ড ব্যবহার করে ব্যাকআপ নেওয়া

SQLite ডাটাবেস ব্যাকআপ নিতে একটি sqlite3 কমান্ডলাইন টুল ব্যবহার করা যায়, যা ডাটাবেসের নিরাপদ ব্যাকআপ নিশ্চিত করে। এটি বিশেষত ডাটাবেসের বড় সাইজের ক্ষেত্রে কার্যকরী।

  1. ব্যাকআপ নেওয়া:
    • টার্মিনালে বা কমান্ড প্রম্পটে নিচের কমান্ডটি চালান:

      sqlite3 mydatabase.db ".backup mydatabase_backup.db"
      
    • এই কমান্ডটি mydatabase.db ডাটাবেস থেকে mydatabase_backup.db নামে একটি ব্যাকআপ তৈরি করবে।

২. Database Restore (রিস্টোর করা)

পদ্ধতি ১: ব্যাকআপ ফাইল ব্যবহার করে রিস্টোর করা

SQLite ডাটাবেস থেকে ব্যাকআপ ফাইল থেকে ডেটা পুনরুদ্ধার করার জন্য আপনি ব্যাকআপ ফাইলটি পুনরায় ডাটাবেস ফাইলের মধ্যে কপি করতে পারেন।

  1. ব্যাকআপ ফাইল রিস্টোর করা:
    • যদি আপনার ব্যাকআপ ফাইলটি mydatabase_backup.db নামে থাকে এবং আপনি এটি পুনরুদ্ধার করতে চান, তবে এটি সরাসরি কপি করে পুরানো ডাটাবেস ফাইলের উপর প্রতিস্থাপন করতে পারেন:

      Windows:

      copy /Y mydatabase_backup.db mydatabase.db
      

      Linux/macOS:

      cp mydatabase_backup.db mydatabase.db
      
    • এটি আপনার mydatabase.db ডাটাবেস ফাইলটি ব্যাকআপ ফাইলের সাথে প্রতিস্থাপন করবে।

পদ্ধতি ২: sqlite3 কমান্ড ব্যবহার করে ব্যাকআপ রিস্টোর করা

SQLite-এ ডাটাবেস রিস্টোর করার জন্য sqlite3 কমান্ডের restore অপশন ব্যবহার করা যেতে পারে।

  1. ব্যাকআপ রিস্টোর করা:
    • টার্মিনালে বা কমান্ড প্রম্পটে নিচের কমান্ডটি চালান:

      sqlite3 mydatabase.db ".restore mydatabase_backup.db"
      
    • এই কমান্ডটি mydatabase_backup.db ফাইলটি থেকে ডেটা পুনরুদ্ধার করে mydatabase.db ফাইলে রিস্টোর করবে।

৩. ব্যাকআপ করার ক্ষেত্রে কিছু টিপস

  • ব্যাকআপের নিয়মিততা: ডাটাবেসের ব্যাকআপ নিয়মিতভাবে নেওয়া উচিত যাতে ডেটার হারানো বা ক্ষতির ঝুঁকি কমে যায়।
  • ব্যাকআপ ফাইলের নিরাপত্তা: ব্যাকআপ ফাইলগুলো নিরাপদ স্থানে সংরক্ষণ করুন এবং সেগুলোর ওপর অ্যাক্সেস সীমিত রাখুন।
  • ব্যাকআপ ফাইলের সংস্করণ: বিভিন্ন সময়ে তৈরি করা ব্যাকআপ ফাইলগুলোর সংস্করণ সংরক্ষণ করুন, যাতে আপনি প্রয়োজনে পুরানো অবস্থায় ফিরে যেতে পারেন।

সারাংশ

SQLite ডাটাবেসের ব্যাকআপ এবং রিস্টোর প্রক্রিয়া খুবই সহজ এবং কার্যকরী। আপনি সরাসরি ডাটাবেস ফাইল কপি করে বা SQLite এর backup কমান্ড ব্যবহার করে ব্যাকআপ নিতে পারেন। পুনরুদ্ধার করার জন্য, ব্যাকআপ ফাইলটি সরাসরি কপি করে বা restore কমান্ড ব্যবহার করে ডাটাবেস পুনরুদ্ধার করা যায়। ব্যাকআপ একটি গুরুত্বপূর্ণ নিরাপত্তা ব্যবস্থা, যা ডাটাবেসের ডেটা সুরক্ষিত রাখতে সাহায্য করে।

Content added By

Database Dump এবং Data Export/Import হল দুটি গুরুত্বপূর্ণ টুল যা ডাটাবেসের ব্যাকআপ বা স্থানান্তরের জন্য ব্যবহৃত হয়। এই টুলগুলোর মাধ্যমে আপনি ডাটাবেসের ডাটা সরাতে, সংরক্ষণ করতে এবং পুনরায় রিস্টোর করতে পারেন। SQLite-এ Database Dump এবং Data Export/Import এর মাধ্যমে আপনি সহজেই ডাটাবেসের কনটেন্ট সংরক্ষণ এবং পুনঃস্থাপন করতে পারবেন।


Database Dump

Database Dump হল একটি ডাটাবেসের সম্পূর্ণ কপি তৈরি করা, যেখানে ডাটাবেসের সমস্ত টেবিল, ডাটা, ইন্ডেক্স এবং অন্যান্য কনফিগারেশন সংরক্ষিত থাকে। সাধারণত SQL Dump ফাইল ফরম্যাটে এটি তৈরি করা হয়, যা একটি টেক্সট ফাইল হিসেবে ডাটাবেসের সমস্ত স্ট্রাকচার এবং ডাটা ধারণ করে।

SQLite এ Database Dump তৈরি করা

SQLite-এ .dump কমান্ড ব্যবহার করে ডাটাবেসের সম্পূর্ণ ডাম্প তৈরি করা যেতে পারে। এটি একটি SQL ফাইল তৈরি করবে, যা পরে অন্য একটি ডাটাবেসে রিস্টোর করা যাবে।

  1. Database Dump তৈরি করা: SQLite CLI-তে নিম্নলিখিত কমান্ড ব্যবহার করে ডাটাবেস ডাম্প করা যেতে পারে:

    sqlite3 mydatabase.db .dump > mydatabase_dump.sql
    
    • এখানে, mydatabase.db হচ্ছে আপনার SQLite ডাটাবেস এবং mydatabase_dump.sql হচ্ছে ডাম্প ফাইলের নাম।
    • .dump কমান্ড ডাটাবেসের সমস্ত টেবিল, ডাটা, এবং স্ট্রাকচার SQL ফরম্যাটে একটি ফাইলে রপ্তানি করবে।
  2. Dump ফাইল পরীক্ষা:
    • Dump ফাইলটি একটি সাধারণ টেক্সট ফাইল। আপনি এটি একটি টেক্সট এডিটরে খুলে দেখতে পারেন। এতে ডাটাবেসের সমস্ত SQL কমান্ড (যেমন CREATE TABLE, INSERT INTO, ইত্যাদি) থাকবে।

Data Export/Import

Data Export এবং Data Import হল ডাটাবেসের ডাটা বিভিন্ন ফরম্যাটে রপ্তানি এবং পুনঃস্থাপন করার প্রক্রিয়া। SQLite সাধারণত CSV, JSON, SQL, এবং XML ফরম্যাটে ডাটা রপ্তানি এবং আমদানি করার সুযোগ দেয়।

SQLite এ Data Export করা

  1. CSV ফরম্যাটে ডাটা এক্সপোর্ট: SQLite থেকে CSV ফরম্যাটে ডাটা এক্সপোর্ট করতে, আপনি নিম্নলিখিত কনফিগারেশন ও কমান্ড ব্যবহার করতে পারেন:

    .mode csv
    .output mydata.csv
    SELECT * FROM mytable;
    .output stdout
    
    • এখানে, .mode csv কমান্ডটি এক্সপোর্টের মোডকে CSV হিসেবে সেট করে, .output mydata.csv কমান্ডটি এক্সপোর্ট ফাইলের নাম নির্ধারণ করে এবং SELECT * FROM mytable কুয়েরি দিয়ে ডাটাবেস থেকে ডাটা রপ্তানি করা হয়।
    • .output stdout দিয়ে আউটপুটকে আবার কমান্ড লাইনে ফেরত পাঠানো হয়।
  2. SQL ফরম্যাটে ডাটা এক্সপোর্ট: আপনি SQL ফরম্যাটে ডাটা এক্সপোর্ট করতে পারেন, যা পরবর্তী সময়ে ডাটাবেসে ইম্পোর্ট করা যাবে:

    .output mydata.sql
    .dump
    .output stdout
    
    • .dump কমান্ডটি ডাটাবেসের সমস্ত ডাটা এবং টেবিল স্ট্রাকচারকে SQL ফরম্যাটে এক্সপোর্ট করবে।

SQLite এ Data Import করা

  1. CSV ফাইল থেকে ডাটা ইম্পোর্ট: SQLite-এ CSV ফাইল থেকে ডাটা ইম্পোর্ট করতে, প্রথমে .mode csv এবং .import কমান্ড ব্যবহার করতে হয়:

    .mode csv
    .import mydata.csv mytable
    
    • এখানে, .mode csv কমান্ডটি ইম্পোর্ট মোডকে CSV হিসেবে সেট করে এবং .import mydata.csv mytable কমান্ডটি mydata.csv ফাইল থেকে ডাটা ইম্পোর্ট করে mytable টেবিলে।
  2. SQL ফাইল থেকে ডাটা ইম্পোর্ট: SQL Dump ফাইল থেকে ডাটা ইম্পোর্ট করতে, আপনি sqlite3 কমান্ড ব্যবহার করতে পারেন:

    sqlite3 mydatabase.db < mydatabase_dump.sql
    
    • এখানে, mydatabase_dump.sql হল ডাম্প ফাইল যা SQL ফরম্যাটে ডাটাবেস স্ট্রাকচার এবং ডাটা ধারণ করে। এটি mydatabase.db ডাটাবেসে ইম্পোর্ট করা হবে।

সারাংশ

Database Dump এবং Data Export/Import হল SQLite ডাটাবেসের ডাটা ব্যাকআপ এবং স্থানান্তর করার সহজ উপায়। Database Dump ডাটাবেসের একটি সম্পূর্ণ কপি তৈরি করে, যা পরবর্তী সময়ে অন্য ডাটাবেসে রিস্টোর করা যায়। Data Export এবং Data Import ডাটাবেসের ডাটা এক্সপোর্ট এবং ইম্পোর্ট করার প্রক্রিয়া, যা সাধারণত CSV, SQL, JSON ইত্যাদি ফরম্যাটে করা হয়। এই টুলগুলি ডাটাবেসের ব্যাকআপ এবং পুনঃস্থাপন প্রক্রিয়াকে সহজ এবং নিরাপদ করে তোলে।

Content added By

SQLite ডাটাবেসের সাথে JSON এবং CSV ফাইলের ইন্টিগ্রেশন খুবই সাধারণ এবং প্রয়োজনীয়। JSON (JavaScript Object Notation) এবং CSV (Comma-Separated Values) ফাইল ফরম্যাট সাধারণত ডেটা এক্সচেঞ্জ এবং সংরক্ষণের জন্য ব্যবহৃত হয়। SQLite ডাটাবেসের সাথে JSON এবং CSV ফাইল হ্যান্ডলিং করার মাধ্যমে আপনি সহজেই ডাটাবেস থেকে ডাটা ইম্পোর্ট এবং এক্সপোর্ট করতে পারেন, অথবা JSON বা CSV ফাইল থেকে ডাটা ইনপুট নিতে পারেন।


SQLite এ CSV ফাইল হ্যান্ডলিং

CSV ফাইল ইম্পোর্ট করা

SQLite তে CSV ফাইল থেকে ডাটা ইনপোর্ট করার জন্য .import কমান্ড ব্যবহার করা হয়।

  1. SQLite3 চালু করা: প্রথমে, টার্মিনালে বা কমান্ড প্রম্পটে SQLite চালু করুন:

    sqlite3 mydatabase.db
    
  2. CSV ফাইল ইম্পোর্ট করা: CSV ফাইল ইম্পোর্ট করার জন্য, প্রথমে .mode csv কমান্ডটি ব্যবহার করুন, যাতে SQLite জানে যে আপনি CSV ফাইলটি ইম্পোর্ট করতে চান।

    এরপর, .import কমান্ড ব্যবহার করে CSV ফাইলটি ডাটাবেসে ইনপোর্ট করুন:

    .mode csv
    .import myfile.csv mytable
    

    এখানে, myfile.csv হলো আপনার CSV ফাইল এবং mytable হলো টেবিলের নাম যেখানে ডাটা ইনসার্ট হবে।

  3. ইম্পোর্ট সফল হলে: ডাটাবেসে ডাটা ইম্পোর্ট হওয়ার পর, আপনি SELECT কুয়েরি চালিয়ে ডাটা দেখতে পারেন:

    SELECT * FROM mytable;
    

CSV ফাইল এক্সপোর্ট করা

SQLite তে ডাটাবেস থেকে CSV ফাইল এক্সপোর্ট করার জন্য .output এবং .mode csv কমান্ড ব্যবহার করা হয়।

  1. CSV ফাইল এক্সপোর্ট করার জন্য: প্রথমে, .mode csv সেট করুন:

    .mode csv
    .output myfile.csv
    SELECT * FROM mytable;
    .output stdout
    

    এটি mytable টেবিলের সমস্ত ডাটা myfile.csv ফাইলে এক্সপোর্ট করবে। stdout কমান্ড দিয়ে আউটপুটকে টার্মিনালে ফেরত পাঠানো হবে।


SQLite এ JSON ফাইল হ্যান্ডলিং

SQLite তে JSON ফাইল হ্যান্ডলিং করার জন্য, আপনি JSON ডাটা স্টোর এবং রিট্রিভ করতে পারেন। SQLite 3.9.0 (২০১৫) থেকে JSON ফাংশনগুলো অন্তর্ভুক্ত করা হয়েছে, যার মাধ্যমে আপনি JSON ডাটা স্টোর করতে এবং কুয়েরি করতে পারবেন।

JSON ডাটা ইনসার্ট করা

SQLite তে JSON ডাটা ইনসার্ট করার জন্য, INSERT INTO কমান্ড ব্যবহার করা হয়, যেখানে JSON ডাটাকে স্ট্রিং হিসেবে ইনসার্ট করা হয়।

CREATE TABLE json_data (id INTEGER PRIMARY KEY, data TEXT);

INSERT INTO json_data (data) 
VALUES ('{"name": "John", "age": 30, "city": "New York"}');

এটি json_data টেবিলে JSON ফরম্যাটে ডাটা ইনসার্ট করবে।

JSON ডাটা রিট্রিভ করা

SQLite JSON ফাংশন ব্যবহার করে আপনি JSON ডাটা থেকে নির্দিষ্ট মান রিট্রিভ করতে পারেন। উদাহরণস্বরূপ:

SELECT json_extract(data, '$.name') AS name FROM json_data;

এটি json_data টেবিলের data কলাম থেকে name ফিল্ডের মান বের করবে।

JSON ফাংশন ব্যবহার

SQLite JSON ফাংশনগুলি কিছু গুরুত্বপূর্ণ অপারেশন করতে পারে, যেমন:

  • json_extract(): JSON ডাটার মধ্যে থেকে নির্দিষ্ট মান এক্সট্র্যাক্ট করা।
  • json_set(): JSON ডাটার মধ্যে নতুন মান সেট করা।
  • json_object(): JSON অবজেক্ট তৈরি করা।

json_extract() উদাহরণ:

SELECT json_extract(data, '$.city') AS city FROM json_data;

এটি JSON ডাটার মধ্যে city ফিল্ডের মান রিটার্ন করবে।


সারাংশ

SQLite এর সাথে JSON এবং CSV ফাইল হ্যান্ডলিং অনেক সহজ এবং কার্যকর। CSV ফাইলের জন্য আপনি .import এবং .output কমান্ড ব্যবহার করতে পারেন, যা ডাটাবেসের সাথে CSV ফাইল ইম্পোর্ট এবং এক্সপোর্ট করতে সহায়তা করে। অন্যদিকে, JSON ফাইলের জন্য, SQLite JSON ফাংশন ব্যবহার করে JSON ডাটা ইনসার্ট এবং রিট্রিভ করতে পারেন, যা আরও উন্নত ডাটা স্টোরেজ এবং কুয়েরি অপারেশন করতে সাহায্য করে।

Content added By
Promotion

Are you sure to start over?

Loading...