techowe.com https://www.techowe.com/2023/04/SQLite.html

SQLite কি? জেনে নিন বিস্তারিত তথ্য

SQLite হল সবচেয়ে জনপ্রিয় এবং বহুল ব্যবহৃত রিলেশনাল ডাটাবেজ সিস্টেমগুলির মধ্যে একটি। এটি অন্যান্য রিলেশনাল ডাটাবেজের তুলনায় বেশি বৈশিষ্ট্য সমৃদ্ধ। অনেক বড় বহুজাতিক কোম্পানি, যেমন Adobe, তাদের ফটোশপ লাইটরুম পণ্যগুলির জন্য অ্যাপ্লিকেশন ফাইল ফর্ম্যাট হিসাবে SQLite ব্যবহার করে। Airbus, একটি ইউরোপীয় বহুজাতিক মহাকাশ কোম্পানি A350 XWB পরিবারের বিমানের জন্য SQLite ফ্লাইট সফটওয়্যার ব্যবহার করে। আমি আশা করি আপনি এই SQLite নিবন্ধে বিভিন্ন ধারণা অর্জন করবেন।

SQLite কি?

SQLite একটি সফ্টওয়্যার লাইব্রেরি যা একটি রিলেশনাল ডাটাবেজ ম্যানেজমেন্ট সিস্টেম প্রদান করে। এই ডাটাবেজ ম্যানেজমেন্ট সিস্টেম ওয়েব, ডেস্কটপ, মোবাইল অ্যাপ্লিকেশনে ব্যাপকভাবে ব্যবহৃত হয়। বিশেষ করে এর অনন্য ডিজাইন এটিকে মোবাইল ডিভাইস বা অ্যাপ্লিকেশনের জন্য একটি দুর্দান্ত পছন্দ করে তোলে। এ কারণে এর  উচ্চ কার্যক্ষমতা বা ভারী কাজের চাপ প্রক্রিয়াকরণের প্রয়োজন হয় না। SQLite হল ওপেন সোর্স, বিনামূল্যে এবং C, C++, Java, Python এবং অন্যান্য অনেক প্রোগ্রামিং ভাষা সাপোর্ট করে। এটি ডাটাবেজ শেখার জন্য বেশ জনপ্রিয় কারণ বাজারে অনেক ডাটাবেজের তুলনায় এটি ব্যবহার করা তুলনামূলকভাবে সহজ।

SQLite হল একটি সফ্টওয়্যার লাইব্রেরি যা একটি স্বতন্ত্র, সার্ভারহীন, কনফিগারেশন-মুক্ত, লেনদেনমূলক SQL ডাটাবেস ইঞ্জিন প্রদান করে। SQLite হল একটি ওপেন সোর্স প্রজেক্ট যা অনুমতিপ্রাপ্ত লাইসেন্সের অধীনে উপলব্ধ, যার অর্থ এটি ব্যবহার, পরিবর্তন এবং বিতরণ সম্পূর্ণ ফ্রি।

SQLite এর গুরুত্বপূর্ণ বৈশিষ্ট্য

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

1. লাইটওয়েট এবং দ্রুত

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

2. ক্রস-প্ল্যাটফর্ম সাপোর্ট 

SQLite এর আরেকটি বড় সুবিধা হল এর ক্রস-প্ল্যাটফর্ম সামঞ্জস্য। SQLite Windows, Linux, Mac OS X, Android, iOS সহ সমস্ত প্রধান অপারেটিং সিস্টেমে চলে। এর মানে হল যে ডেভেলপাররা সহজেই পোর্টেবল অ্যাপ এবং ডাটাবেস তৈরি করতে পারে যা বিভিন্ন প্ল্যাটফর্ম এবং ডিভাইস জুড়ে নির্বিঘ্নে চলতে পারে। এটি ডাটাবেজ পরিচালনা এবং রক্ষণাবেক্ষণকেও সহজ করে কারণ প্ল্যাটফর্ম সম্পর্কিত সমস্যা বা নির্ভরতা সম্পর্কে চিন্তা করার দরকার নেই।

3. ACID কমপ্লায়েন্স

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

4. এক্সটেনসিবিলিটি এবং কাস্টমাইজেশন

SQLite অত্যন্ত এক্সটেনসিবল এবং কাস্টমাইজযোগ্য, এটির মডুলার আর্কিটেকচার এবং ব্যবহারকারী-সংজ্ঞায়িত ফাংশন এবং এক্সটেনশনগুলির জন্য সমর্থনের জন্য সুপরিচিত। ডেভেলপাররা কাস্টম ডেটা টাইপ, স্টোরেজ ইঞ্জিন, ইন্ডেক্সিং মেকানিজম বা অন্যান্য কাস্টম বৈশিষ্ট্য যোগ করে SQLite কার্যকারিতা প্রসারিত করতে পারে। তারা C, Python বা অন্যান্য ভাষায় তাদের নিজস্ব SQL ফাংশন লিখতে পারে এবং SQLite-এর অন্তর্নির্মিত ফাংশনগুলির সাথে নির্বিঘ্নে একত্রিত করতে পারে। এই নমনীয়তা এবং প্রসারণযোগ্যতা SQLiteকে জটিল এবং পরিশীলিত অ্যাপ্লিকেশন তৈরির জন্য একটি শক্তিশালী হাতিয়ার করে তোলে যার জন্য উন্নত ডেটা প্রক্রিয়াকরণ এবং বিশ্লেষণ ক্ষমতা প্রয়োজন।

5. ওপেন-সোর্স লাইসেন্স

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

6. স্বয়ংসম্পূর্ণ

SQLite হল একটি স্বয়ংসম্পূর্ণ, সার্ভারহীন ডাটাবেস ম্যানেজমেন্ট সিস্টেম যার কাজ করার জন্য আলাদা সার্ভার প্রক্রিয়া বা সিস্টেমের প্রয়োজন হয় না। এটি বিভিন্ন অ্যাপ্লিকেশনে স্থাপন এবং ব্যবহার করা সহজ করে তোলে।

7. লেনদেন

SQLite লেনদেন সমর্থন করে, যা একাধিক ডাটাবেজ ক্রিয়াকলাপকে একত্রিত করার অনুমতি দেয়। ডাটাবেজ  সামঞ্জস্যপূর্ণ থাকে তা নিশ্চিত করে কোনো ত্রুটি ঘটলে লেনদেন ফিরিয়ে আনা যেতে পারে।

8. ইন্ডেক্সিং

SQLite ইন্ডেক্সিং করে  যা নির্দিষ্ট মানদণ্ডের উপর ভিত্তি করে ডেটা দ্রুত পুনরুদ্ধার করতে দেয়। এটি ডাটাবেজের কর্মক্ষমতা ব্যাপকভাবে উন্নত করতে পারে।

9. ট্রিগার সাপোর্টেড

SQLite ট্রিগার সমর্থন করে, যা ডাটাবেজে কিছু ঘটনা ঘটলে স্বয়ংক্রিয়ভাবে কার্যকর হতে পারে। এটি ডেভেলপারদের তাদের অ্যাপ্লিকেশনগুলিতে অতিরিক্ত কার্যকারিতা যোগ করতে দেয়, যেমন স্বয়ংক্রিয় আপডেট বা নোটিফিকেশন৷

10. উপসেট সমর্থন

SQLite এসকিউএল-এর একটি উপসেট সমর্থন করে, যা ডেভেলপারদের বিভিন্ন ধরনের ক্রিয়াকলাপ সম্পাদন করতে দেয়, যার মধ্যে রয়েছে টেবিল তৈরি এবং সংশোধন করা, ডেটা সন্নিবেশ করা এবং আপডেট করা, ডাটাবেজ ডেটা অনুসন্ধান করা। 

কেন SQLite ব্যবহার করবেন?

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

  • SQLite একটি ওপেন সোর্স সফটওয়্যার। সফ্টওয়্যার ইনস্টল করার পরে কোন লাইসেন্স প্রয়োজন হয় না.

  • SQLite সার্ভারহীন কারণ এটি পরিচালনা করার জন্য একটি ভিন্ন সার্ভার প্রক্রিয়া বা সিস্টেমের প্রয়োজন নেই।

  • SQLite আপনাকে একই সেশনে একাধিক ডাটাবেজ একই সাথে কাজ করার সুবিধা দেয়, এইভাবে এটি নমনীয় করে তোলে।

  • SQLite হল একটি ক্রস-প্ল্যাটফর্ম DBMS যা macOS, Windows ইত্যাদি সহ সমস্ত প্ল্যাটফর্মে চলতে পারে।

  • SQLite কোন কনফিগারেশন প্রয়োজন হয় না. এটির কোন সেটআপ প্রয়োজন নেই।
  • SQLite সেট আপ এবং ব্যবহার করা সহজ, এবং এর কমান্ডগুলি খুব সহজ এবং স্বজ্ঞাত। এটির একটি ছোট শেখার বক্ররেখা রয়েছে, এটি ছোট থেকে মাঝারি আকারের প্রকল্পগুলির জন্য একটি আদর্শ পছন্দ।
  • SQLite হল একটি ক্রস-প্ল্যাটফর্ম ডাটাবেজ যা Windows, macOS, Linux এবং Android সহ বিভিন্ন অপারেটিং সিস্টেমে চলতে পারে।
  • SQLite হল একটি স্বয়ংসম্পূর্ণ ডাটাবেজ যার জন্য আলাদা সার্ভার প্রক্রিয়া বা সিস্টেম অ্যাডমিনিস্ট্রেটরের প্রয়োজন নেই।
  • SQLite একটি উল্লেখযোগ্য পরিমাণ ডেটা এবং প্রশ্ন দক্ষতার সাথে পরিচালনা করতে পারে এবং এটির একটি দ্রুত লেনদেন প্রক্রিয়াকরণ ক্ষমতা রয়েছে যা ডেটা সামঞ্জস্য নিশ্চিত করে।
  • SQLite ব্যাপকভাবে ব্যবহৃত হয়। এটির ডেভেলপার এবং ব্যবহারকারীদের একটি বড় এবং সক্রিয় কমিউনিটি রয়েছে। এই কমিউনিটি ব্যবহারকারীদের জন্য অনেক সাপোর্ট প্রদান করে থাকে। 
  • SQLite ব্যবহার করার সবচেয়ে বড় সুবিধা হল এর কম খরচ। যেহেতু এটি একটি ওপেন সোর্স ডাটাবেস, এটি ব্যবহার এবং বিতরণ করা সম্পূর্ণ ফ্রি। এটি ছোট ব্যবসা, স্টার্টআপ বা ব্যক্তি যারা কম বাজেটে অ্যাপ্লিকেশন তৈরি করছে তাদের জন্য এটি একটি চমৎকার পছন্দ হতে পারে।
  • SQLite অত্যন্ত নিরাপদ। এটি ব্যবহারকারীর ডেটা সুরক্ষিত করতে এনক্রিপশন এবং হ্যাশিং সহ বিভিন্ন সুরক্ষা বৈশিষ্ট্য ব্যবহার করে। এতে নিরাপদ সকেট লেয়ার (SSL) এবং ট্রান্সপোর্ট লেয়ার সিকিউরিটি (TLS) এর জন্য অন্তর্নির্মিত সমর্থনও রয়েছে, যা ডেটা লঙ্ঘনের বিরুদ্ধে অতিরিক্ত সুরক্ষা প্রদান করে।

কোন কোন ক্ষেত্রে  SQLite ব্যবহার করবেন?

SQLite বর্তমানে ব্যবহৃত সবচেয়ে জনপ্রিয় রিলেশনাল ডাটাবেজ ম্যানেজমেন্ট সিস্টেমগুলির মধ্যে একটি। আপনি কখন SQLite ব্যবহার করবেন? এখানে কি ব্যবহারের জন্য কিছু প্রস্তাবিত ক্ষেত্রে দেয়া হলো:
  • মোবাইল অ্যাপ্লিকেশন: SQLite এর ছোট আকার, দক্ষতা এবং স্বয়ংসম্পূর্ণ প্রকৃতির কারণে মোবাইল অ্যাপ্লিকেশনের জন্য জনপ্রিয়। এটি Android এবং iOS উভয় মোবাইল অ্যাপের জন্য পছন্দের ডাটাবেস ইঞ্জিন।
  • প্রোটোটাইপিং: দ্রুত প্রোটোটাইপ বা ধারণার প্রমাণ তৈরি করার জন্য SQLite একটি চমৎকার পছন্দ। এর সরলতার কারণে আপনি মিনিটের মধ্যে একটি মৌলিক ডাটাবেজ তৈরি করতে পারেন, যা পরীক্ষার জন্য উপযুক্ত।
  • সার্ভারহীন অ্যাপ্লিকেশন: আপনি যদি একটি সার্ভারহীন অ্যাপ্লিকেশন তৈরি করার পরিকল্পনা করেন, তাহলে SQLite একটি চমৎকার পছন্দ হতে পারে। এটি কাজ করার জন্য একটি সার্ভারের প্রয়োজন হয় না, এবং এটি কোনো নির্দিষ্ট প্ল্যাটফর্মে ইনস্টল করার প্রয়োজন হয় না।
  • Learning SQL: এসকিউএল এর শিক্ষানবিসদের জন্য SQLite অনুশীলন করার জন্য একটি চমৎকার টুল। যেহেতু এটি সেট আপ করা সহজ তাই কোনো অতিরিক্ত সফ্টওয়্যার ইনস্টল করার প্রয়োজন ছাড়াই SQL কোয়েরি অনুশীলন করতে পারেন।
  • ছোট আকারের ওয়েবসাইট: SQLite ছোট আকারের ওয়েবসাইটগুলির জন্য উপযুক্ত কারণ এটি একটি মাঝারি পরিমাণ ট্রাফিক পরিচালনা করতে পারে। ভারী ট্রাফিক পায় এমন সাইটগুলির জন্য এটি সুপারিশ করা হয় না। যদি আপনার ওয়েবসাইট দ্রুত বৃদ্ধির আশা করা হয়, তাহলে আরও মাপযোগ্য ডাটাবেজ ব্যবহার করার কথা বিবেচনা করুন।
  • ডেস্কটপ অ্যাপ্লিকেশন: SQLite একটি ডেস্কটপ অ্যাপ্লিকেশনের জন্য একটি চমৎকার পছন্দ। এটি ওয়েব ব্রাউজার, ইমেল ক্লায়েন্ট এবং মিডিয়া প্লেয়ার সহ অনেক ডেস্কটপ সফ্টওয়্যার অ্যাপ্লিকেশনগুলিতে ব্যবহৃত হয়।
  • ডেটা বিশ্লেষণ: SQLite ডেটা বিশ্লেষণের জন্য উপযুক্ত কারণ এটি দক্ষতার সাথে প্রচুর পরিমাণে ডেটা পরিচালনা করতে পারে। এটি জনপ্রিয় ডেটা বিশ্লেষণ সরঞ্জামগুলির সাথেও ব্যবহার করা যেতে পারে, যেমন R এবং Python।
  • এমবেডেড সিস্টেম: SQLite ব্যাপকভাবে এমবেডেড সিস্টেমে ব্যবহৃত হয়, যেমন স্মার্ট অ্যাপ্লায়েন্স, রোবোটিক্স এবং স্বয়ংচালিত সিস্টেম। এটি হালকা ওজনের, সংহত করা সহজ এবং ন্যূনতম ধারণা প্রয়োজন।

উইন্ডোজে SQLite কিভাবে ইনস্টল করবেন?

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

ধাপ 1: SQLite টুল ডাউনলোড করুন: 

SQLite-এর অফিসিয়াল ওয়েবসাইট (https://www.sqlite.org/download.html) দেখুন এবং ডাউনলোড পৃষ্ঠাতে যান। আপনি বিভিন্ন প্ল্যাটফর্মের জন্য প্রি-কম্পাইল করা বাইনারিগুলির একটি তালিকা পাবেন। নীচে স্ক্রোল করুন এবং "উইন্ডোজের জন্য প্রি-কম্পাইলড বাইনারি" Optionটি নির্বাচন করুন। SQLite এর সর্বশেষ সংস্করণ ডাউনলোড করতে লিঙ্কটিতে ক্লিক করুন।

ধাপ 2: SQLite ইনস্টল করুন।

SQLite বাইনারি ডাউনলোড করার পরে ইনস্টলেশন প্রক্রিয়া শুরু করতে সেটআপ ফাইলটিতে ডাবল ক্লিক করুন। ইনস্টলার আপনাকে ইনস্টলেশন প্রক্রিয়ার মাধ্যমে গাইড করবে। একটি সফল ইনস্টলেশন সম্পন্ন করার পর পরবর্তী নির্দেশ অনুসরণ করুন।

ধাপ 3: এনভায়রনমেন্ট ভেরিয়েবল কনফিগার করুন।

ডিফল্টরূপে, SQLite আপনার কম্পিউটারের C ড্রাইভে ইনস্টল করে। কমান্ড প্রম্পট থেকে SQLite ব্যবহার করতে আপনাকে এনভায়রনমেন্ট ভেরিয়েবলে ইনস্টলেশন পাথ যোগ করতে হবে। এটি সফলভাবে করার জন্য কয়েকটি পদক্ষেপ অনুসরণ করতে হবে:
  • Windows কী + X টিপুন এবং সিস্টেম নির্বাচন করুন।
  • অ্যাডভান্সড সিস্টেম সেটিংসে ক্লিক করুন।
  • Environment Variables-এ ক্লিক করুন।
  • সিস্টেম ভেরিয়েবল বিভাগে, নীচে স্ক্রোল করুন এবং পাথ সনাক্ত করুন।
  • সম্পাদনা বোতামে ক্লিক করুন।
  • নতুন বোতামে ক্লিক করুন।
  • পাথ টাইপ করুন যেখানে আপনি SQLite ইনস্টল করেছেন। উদাহরণস্বরূপ: C:sqlite।
ধাপ 4: SQLite ইনস্টলেশন পরীক্ষা করুন।

এখন আপনি আপনার ইনস্টল করা এবং কনফিগার করা SQLite পরীক্ষা করুন। কমান্ড প্রম্পট খুলুন এবং "sqlite3" টাইপ করুন। আপনি যদি একটি স্বাগত বার্তা দেখতে পান তবে নিশ্চিত হন আপনার ইনস্টলেশন সফল হয়েছে।

অ্যান্ড্রয়েডে SQLite কিভাবে ইনস্টল করবেন?

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

ধাপ 1 - প্রয়োজনীয় ফাইল ডাউনলোড করুন

প্রথমে, আপনাকে Android এ SQLite ইনস্টল করার জন্য প্রয়োজনীয় ফাইলগুলি ডাউনলোড করতে হবে। SQLite একটি প্রাক-নির্মিত লাইব্রেরি হিসাবে উপলব্ধ রয়েছে যা অ্যান্ড্রয়েড অ্যাপে একত্রিত করা যেতে পারে। আপনি অফিসিয়াল SQLite ওয়েবসাইট থেকে Android এর জন্য পূর্ব-নির্মিত SQLite লাইব্রেরি ফাইল ডাউনলোড করতে পারেন।

ধাপ 2 - একটি নতুন অ্যান্ড্রয়েড প্রকল্প তৈরি করুন

অ্যান্ড্রয়েড স্টুডিও খুলুন এবং একটি নতুন প্রকল্প তৈরি করুন। আপনি আপনার পছন্দ অনুযায়ী আপনার প্রকল্পের যে কোনো নাম দিতে পারেন। আপনার প্রকল্পের জন্য সর্বনিম্ন SDK সংস্করণ নির্বাচন করুন এবং পরবর্তী বোতামে ক্লিক করুন। প্রকল্প ফোল্ডার অবস্থান চয়ন করুন এবং ফিনিস বোতামে ক্লিক করুন.

ধাপ 3 - প্রকল্পে SQLite লাইব্রেরি যোগ করা

আপনার প্রকল্পের "অ্যাপ" ফোল্ডারের ভিতরে "libs" নামে একটি নতুন ফোল্ডার তৈরি করুন। ডাউনলোড করা SQLite লাইব্রেরি ফাইলগুলিকে “libs” ফোল্ডারে কপি করুন। এর পরে, ফাইল -> প্রজেক্ট স্ট্রাকচার -> নির্ভরতাগুলিতে যান এবং "+" (যোগ) বোতামে ক্লিক করুন। "ফাইল নির্ভরতা" নির্বাচন করুন এবং "libs" ফোল্ডার থেকে SQLite লাইব্রেরি ফাইলগুলি নির্বাচন করুন।

ধাপ 4 - AndroidManifest.xml-এ অনুমতি যোগ করুন

SQLite ডাটাবেসে ডেটা পড়তে এবং লিখতে আপনার প্রকল্পের AndroidManifest.xml ফাইলে অনুমতি যোগ করুন। "মেনিফেস্ট" ট্যাগের ভিতরে নিম্নলিখিত অনুমতি যোগ করুন।

ধাপ 5 - একটি ডাটাবেস হেল্পার ক্লাস তৈরি করুন

"DatabaseHelper" নামে একটি নতুন জাভা ক্লাস তৈরি করুন এবং "SQLiteOpenHelper" ক্লাস প্রসারিত করুন। ক্লাসে একটি কনস্ট্রাক্টর এবং দুটি ওভাররাইড পদ্ধতি "অনক্রিয়েট" এবং "অনআপগ্রেড" থাকা উচিত।

ধাপ 6 - ডাটাবেস শুরু করা: 

"DatabaseHelper" ক্লাসের "onCreate" পদ্ধতির ভিতরে, "SQLiteDatabase" ক্লাস ব্যবহার করে ডাটাবেস তৈরি করতে কোডটি লিখুন।

ধাপ 7 - টেবিল তৈরি করা

"onCreate" পদ্ধতির ভিতরে, "SQLiteDatabase.execSQL()" পদ্ধতি ব্যবহার করে টেবিল তৈরি করতে কোডটি লিখুন।

ধাপ 8 - তথ্য সন্নিবেশ করান

ডাটাবেসে তথ্য সন্নিবেশ করতে, "SQLiteDatabase.insert()" পদ্ধতি ব্যবহার করুন।

অবশেষে, আপনি অ্যাপ্লিকেশনটি চালাতে পারেন এবং যাচাই করতে পারেন যে আপনার SQLite ডাটাবেস তৈরি করা হয়েছে এবং ডেটা টেবিলে সফলভাবে ঢোকানো হয়েছে।

SQLite এর সীমাবদ্ধতা

QLite এখন প্রায় 20 বছরেরও বেশি সময় ধরে চলছে এবং এটি অনেক মোবাইল অ্যাপ্লিকেশন, ডেস্কটপ অ্যাপ্লিকেশন এবং ব্রাউজার এক্সটেনশনের জন্য একটি বহুল ব্যবহৃত ডাটাবেস ম্যানেজমেন্ট সিস্টেম। জনপ্রিয়তা সত্ত্বেও  SQLite এর কিছু সীমাবদ্ধতা রয়েছে যা এর কর্মক্ষমতা এবং ক্ষমতাকে প্রভাবিত করতে পারে। এখানে SQLite এর কিছু প্রধান সীমাবদ্ধতা উল্লেখ করা হলো:

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

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

তৃতীয়ত: SQLite-এর তৃতীয় সীমাবদ্ধতা হল এর অন্তর্নির্মিত নিরাপত্তা ব্যবস্থার অভাব। SQLite এর একটি অন্তর্নির্মিত নিরাপত্তা ব্যবস্থার অভাব রয়েছে যা এটিকে হ্যাকিং এবং দূষিত আক্রমণের জন্য ঝুঁকিপূর্ণ করে তুলছে। অন্যান্য ডাটাবেস ম্যানেজমেন্ট সিস্টেম যেমন MySQL, PostgreSQL, এবং Oracle থেকে ভিন্ন, SQLite-এর ব্যবহারকারী এবং অনুমতির ধারণা নেই এবং যে কেউ ডাটাবেজ ফাইলে অ্যাক্সেস আছে তারা এর বিষয়বস্তু পড়তে বা পরিবর্তন করতে পারে। এটি উচ্চ-স্তরের নিরাপত্তা প্রয়োজন এমন অ্যাপ্লিকেশনগুলির জন্য SQLite অনুপযুক্ত করে তোলে।

চতুর্থত: SQLite সম্পূর্ণ টেক্সট অনুসন্ধান, সংরক্ষিত পদ্ধতি, ট্রিগার এবং বিদেশী কী সহ অনেক উন্নত SQL বৈশিষ্ট্য সমর্থন করে না। এই সীমাবদ্ধতাগুলি SQLite এর উপর নির্ভর করে এমন অ্যাপ্লিকেশনগুলিতে নির্দিষ্ট বৈশিষ্ট্যগুলি বাস্তবায়ন করা অসম্ভব করে তুলতে পারে।

পঞ্চমতঃ SQLite এর কিছু কর্মক্ষমতা সীমাবদ্ধতা রয়েছে। যদিও এটি দ্রুত এবং লাইটওয়েট হিসাবে পরিচিত, তবে ডাটাবেসের আকার বাড়ার সাথে সাথে SQLite ধীর হয়ে যেতে পারে। এর কারণ হল কিছু ক্যোয়ারী চালানোর জন্য SQLite-কে পুরো ডাটাবেস স্ক্যান করতে হয় এবং একটি বড় ডাটাবেসের সাথে এতে অনেক সময় লাগতে পারে, যার ফলে কর্মক্ষমতা কমে যায়।

ষষ্ঠত: SQLite সীমিত সংখ্যক ডেটা টাইপ সমর্থন করে, যা নির্দিষ্ট ধরণের ডেটা যেমন টাইমস্ট্যাম্প বা বাইনারি ডেটা সংরক্ষণ করাকে চ্যালেঞ্জিং করে তুলতে পারে। এটি ডাটাবেজ স্কিমার নমনীয়তা সীমিত করতে পারে।

সপ্তম: যেহেতু SQLite একটি স্বয়ংসম্পূর্ণ ডাটাবেস, এটি সার্ভার-সাইড প্রসেসিং সমর্থন করে না। তাই এটি নির্দিষ্ট ওয়েব অ্যাপ্লিকেশন পরিস্থিতিতে এর উপযোগিতা সীমিত করতে পারে।

অষ্টম: SQLite-এ, ALTER টেবিল স্টেটমেন্ট ব্যবহার করে আপনি শুধুমাত্র একটি কলাম যোগ করতে পারেন বা একটি টেবিলের নাম পরিবর্তন করতে পারেন।

উপসংহার

এই SQLite নিবন্ধে আপনি স্ক্র্যাচ থেকে SQLite শিখেছেন এবং আশা করি SQLite এর সমস্ত প্রয়োজনীয় বিষয় বুঝতে পেরেছেন। SQLite সাধারণত পাবলিক ডোমেনে থাকে এবং বেশিরভাগ ডেভেলপারদের দ্বারা ব্যবহৃত হয়। এই নিবন্ধটি পড়ার পর SQLite টিউটোরিয়াল সম্পর্কে আপনার কোন প্রশ্ন আছে? কোন প্রশ্ন থাকলে মন্তব্য বিভাগে লিখুন। আমাদের দল যত তাড়াতাড়ি সম্ভব আপনার প্রশ্নের উত্তর দেবে!


অন্যদের সাথে শেয়ার করুন

0 Comments

দয়া করে নীতিমালা মেনে মন্তব্য করুন ??

নটিফিকেশন ও নোটিশ এরিয়া