Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

এসকিউএল টেবিল তৈরি করুন

এসকিউএল টেবিল তৈরি করুন

এসকিউএল হল একটি ডোমেন-নির্দিষ্ট ভাষা যা প্রকৌশলীরা রিলেশনাল ডাটাবেসে বা রিলেশনাল ডাটা স্ট্রীম ম্যানেজমেন্ট সিস্টেমে স্ট্রিম প্রসেসিংয়ের জন্য ডেটা পরিচালনা করতে ব্যবহার করে। আপনি টেবিলের মাধ্যমে একটি রিলেশনাল ডাটাবেসে ডেটা সংরক্ষণ করতে পারেন। এই প্রক্রিয়ার প্রথম কাজটি হল ডাটাবেস তৈরি করা যার উপর আপনি কাজ করতে চান। তারপরে আমরা টেবিল তৈরি করি যেখানে প্রকৃত তথ্য সংরক্ষণ করা হবে। এই ধরনের ডাটাবেসের একটি টেবিলে সারি এবং কলাম উভয়ই থাকবে।

প্রতিটি কলামের সাথে যুক্ত একটি নির্দিষ্ট ডেটাটাইপ থাকবে যা নির্ধারণ করে যে এটি কী ধরনের ডেটা সংরক্ষণ করতে পারে। টেবিল তৈরি করার সময়, আমাদের প্রতিটি কলামের নাম এবং ডেটাটাইপ উল্লেখ করতে হবে। আপনি MySQL এবং PostgreSQL উভয় ডাটাবেসে SQL CREATE TABLE কমান্ড ব্যবহার করে একটি টেবিল তৈরি করতে পারেন।

আসুন টেবিল তৈরি করুন এসকিউএল স্টেটমেন্টটি আরও গভীরভাবে দেখে নেওয়া যাক।

আমি কিভাবে SQL দিয়ে একটি টেবিল তৈরি করব?

আপনি নিম্নলিখিত সিনট্যাক্স সহ MySQL এ একটি টেবিল তৈরি করতে পারেন:

টেবিল তৈরি করুন টেবিল_নাম(

column_1 data_type ডিফল্ট মান column_constraint ,

column_2 data_type ডিফল্ট মান column_constraint ,

...,

…,

টেবিল_সীমাবদ্ধতা

);

একটি টেবিল তৈরি করার সময় আপনার যে মৌলিক জিনিসগুলি থাকা উচিত তা হল এর নাম এবং অন্তত একটি কলামের নাম। একটি নির্দিষ্ট টেবিলের নামের সাথে শুধুমাত্র একটি ডাটাবেস টেবিল থাকা উচিত। আপনি যদি একই নামের দুটি টেবিল তৈরি করার চেষ্টা করেন তবে ডাটাবেস আপনাকে একটি ত্রুটি বার্তা দেখাবে।

বন্ধনীর ভিতরে, আমরা টেবিলে যে কলামগুলি তৈরি করতে চাই তার নাম উল্লেখ করি, সাথে যে ডেটা প্রবেশ করা হবে তার ডেটা প্রকার। কমা এই কলামগুলির নাম আলাদা করবে। নাম, ডেটা টাইপ, কলামের ডিফল্ট মান এবং এক বা একাধিক কলামের সীমাবদ্ধতা প্রতিটি কলাম তৈরি করে।

কলামের সীমাবদ্ধতাগুলি প্রকৃত ডেটা মান নিয়ন্ত্রণ করে যা কলামে সংরক্ষণ করা যেতে পারে। উদাহরণস্বরূপ, NOT NULL সীমাবদ্ধতা গ্যারান্টি দেয় যে সেই নির্দিষ্ট কলামে কোনও NULL মান বিদ্যমান নেই। একটি একক কলামের জন্য আপনার একাধিক সীমাবদ্ধতা থাকতে পারে। উদাহরণস্বরূপ, একটি কলামে NOT NULL এবং UNIQUE উভয় সীমাবদ্ধতা থাকতে পারে।

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

আসুন একটি উদাহরণ দেখি:

টেবিল গ্রাহক তৈরি করুন(

আইডি শূন্য নয়,

নাম ভার্চার (20) শূন্য নয়,

বয়স শূন্য নয়,

বেতন দশমিক (18, 2),

প্রাথমিক কী (আইডি)

);

এখানে, টেবিলের নাম "CUSTOMERS" এবং এর প্রাথমিক কী হল ID। ID, NAME এবং AGE কলামে NOT NULL এর সীমাবদ্ধতা রয়েছে। নামের দৈর্ঘ্য 20 অক্ষরের কম হওয়া উচিত। এখন, আমরা SQL CREATE TABLE কমান্ড দিয়ে একটি টেবিল তৈরি করেছি এবং আমরা এতে প্রাসঙ্গিক ডেটা এবং ডাটাবেস সন্নিবেশ করতে পারি।

আপনি কি MySQL/PostgreSQL এ একটি টেবিলের ভিতরে একটি টেবিল রাখতে পারেন?

একটি টেবিলের ভিতরে একটি টেবিল থাকাকে টেবিলের নেস্টিং বলা হবে। এর জন্য, আমাদেরকে SQL CREATE TABLE কমান্ড দিয়ে অন্য টেবিলের ভিতরে একটি টেবিল তৈরি করতে হবে। এটি এমন একটি ধারণা যা MySQL-এ বিদ্যমান নেই। যাইহোক, আমরা একটি প্রাথমিক কী এবং একটি বিদেশী কী ব্যবহার করে নেস্টেড টেবিলের মতো একই ফলাফল অর্জন করতে পারি। এটি দুটি টেবিলের মধ্যে পিতামাতা-সন্তানের সম্পর্ক তৈরি করে।

একটি টেবিলের একটি ক্ষেত্র বা ক্ষেত্রগুলির একটি গ্রুপ যা অন্য টেবিলের প্রাথমিক কী উল্লেখ করে একটি বিদেশী কী নামে পরিচিত। প্রধান প্রাথমিক কী সহ টেবিলটিকে প্যারেন্ট টেবিল হিসাবে উল্লেখ করা হয়, যখন বিদেশী কী সহ একটি চাইল্ড টেবিল হিসাবে উল্লেখ করা হয়।

উদাহরণস্বরূপ, ধরে নিন আমাদের একটি প্যারেন্ট টেবিল ভেহিকল আছে, যার প্রাথমিক কীটি VehId। আমাদের আরও দুটি টেবিল রয়েছে, যথাক্রমে প্রাইমারি কী CarId সহ Car, এবং প্রাথমিক কী TruckId সহ ট্রাক। আমরা যদি গাড়ি এবং ট্রাক উভয় ক্ষেত্রেই VehId একটি বিদেশী কী হিসাবে রাখি, তাহলে যানবাহন তার মূল টেবিলে পরিণত হবে, এইভাবে পিতামাতা-সন্তানের সম্পর্ক তৈরি হবে।

Try AppMaster no-code today!
Platform can build any web, mobile or backend application 10x faster and 3x cheaper
Start Free

প্যারেন্ট টেবিল যানবাহন {VehId}

শিশু টেবিল

1. গাড়ি {VehId,CarId}

2. ট্রাক {VehId,TruckId}

এটি প্রথমে তৈরি না করেই কি একটি এসকিউএল টেবিলে নির্বাচন করা সম্ভব?
একটি ডাটাবেস থেকে ডেটা নির্বাচন করতে, আমরা SELECT স্টেটমেন্ট ব্যবহার করি। এর থেকে ডেটা রেজাল্ট টেবিলে রাখা হয় যাকে রেজাল্ট সেট বলা হয়। এটি একটি টেবিলের একটি অংশ বা পুরো টেবিল সম্পূর্ণরূপে নির্বাচন করতে ব্যবহৃত হয়। আপনি যখন কোডিং করছেন এবং SQL CREATE TABLE কমান্ড দিয়ে একটি টেবিল তৈরি করেছেন, তখন আপনি আপনার তৈরি করা টেবিলগুলি দেখতে SELECT কমান্ড ব্যবহার করতে পারেন।

এর সিনট্যাক্স এইরকম:

কলাম_1, কলাম_2, … নির্বাচন করুন

টেবিল_নাম থেকে;

উদাহরণস্বরূপ, নিম্নলিখিত কমান্ডটি সম্পূর্ণ টেবিল নির্বাচন করে।

টেবিল_নাম থেকে * নির্বাচন করুন;

INTO নির্বাচন করুন
SELECT INTO স্টেটমেন্ট ব্যবহার করে একটি টেবিল থেকে ডেটা অন্য টেবিলে স্থানান্তর করা হয়। এটি একটি টেবিলের সমস্ত কলাম অন্য টেবিলে কপি করতে পারে। এটি সাধারণত ব্যবহৃত হয় যখন যে টেবিলে ডেটা কপি করা হচ্ছে সেটি আগে থেকেই থাকে।

একটি টেবিলের সমস্ত কলাম নির্বাচন করতে:

নির্বাচন করুন *

INTO new_table [IN externaldb]

পুরানো_টেবিল থেকে

যেখানে শর্ত;

নতুন টেবিলে শুধুমাত্র কয়েকটি কলাম নির্বাচন করতে:

কলাম_1, কলাম_2, কলাম_3, ... নির্বাচন করুন

INTO new_table [IN externaldb]

পুরানো_টেবিল থেকে

যেখানে শর্ত;

সুতরাং, আমরা কি একটি টেবিলে নির্বাচন করতে পারি যদি আমরা এটি এখনও এসকিউএল ক্রিয়েট টেবিল দিয়ে তৈরি না করে থাকি?

যৌক্তিকভাবে, উত্তরটি না হওয়া উচিত। কিন্তু এটি এমন নয়, এবং আমরা একটি টেবিলে নির্বাচন করতে পারি যদিও আমরা এটি তৈরি না করে থাকি। যখন একটি টেবিল তৈরি করতে হয়, এবং একটি টেবিল থেকে ডেটা সদ্য জেনারেট করা টেবিলে স্থানান্তর করতে হয়, এই পদ্ধতিটি ব্যবহার করা হয়। নির্বাচিত কলামগুলির মতো একই ডেটা প্রকারগুলি নতুন টেবিল তৈরি করতে ব্যবহৃত হয়।

আপনি কিভাবে SQL এ একটি পণ্য টেবিল তৈরি করবেন?

এসকিউএল-এ একটি পণ্য টেবিল বিভিন্ন উপায়ে তৈরি করা যেতে পারে। SQL CREATE TABLE স্টেটমেন্ট ব্যবহার করা একটি বিকল্প। পণ্যের তথ্য একটি টেবিলে থাকবে যা এই বিবৃতিটি তৈরি করবে। SELECT কমান্ডটি টেবিল থেকে ডেটা দেখতে এবং পেতেও ব্যবহার করা যেতে পারে। এই উভয়ের জন্য বাক্য গঠন উপরে উল্লেখ করা হয়েছে।

INSERT কমান্ডটি টেবিলে নতুন ডেটা সন্নিবেশ করতেও ব্যবহার করা যেতে পারে। INSERT স্টেটমেন্টের জন্য ধন্যবাদ, ডেটা নির্দিষ্ট অবস্থানে টেবিলে ঢোকানো হবে। এছাড়াও SELECT ক্যোয়ারী ব্যবহার করে ডেটা টেবিল থেকে বের করে নেওয়া যেতে পারে এবং তারপর INSERT স্টেটমেন্ট ব্যবহার করে অন্য টেবিলে যোগ করা যেতে পারে।

মধ্যে সন্নিবেশ
আমরা একটি টেবিলে নতুন রেকর্ড যোগ করতে INSERT INTO বিবৃতি ব্যবহার করি। INSERT স্টেটমেন্টের সিনট্যাক্স হল:

টেবিল_নাম ঢোকান (কলাম_1, কলাম_2, ...)

VALUES (মান_1, মান_2, ...);

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

এসকিউএল ডাটাবেসের জন্য কোন ধরনের ডেটা উপযুক্ত?

SQL CREATE TABLE কমান্ড ব্যবহার করার সময়, আমাদের কলামের ডেটা প্রকার উল্লেখ করতে হবে। একটি কলাম যে ডেটা অন্তর্ভুক্ত করতে পারে তা এই ডেটা প্রকারের উপর নির্ভর করে। উদাহরণগুলির মধ্যে পূর্ণসংখ্যা, অক্ষর, বাইনারি, তারিখ এবং সময় এবং আরও অনেক কিছু অন্তর্ভুক্ত রয়েছে। একটি ডাটাবেস টেবিলের প্রতিটি কলামের জন্য একটি নামের পাশাপাশি একটি ডেটা টাইপ থাকতে হবে।

একটি টেবিল তৈরি করার সময়, একজন SQL প্রোগ্রামারকে অবশ্যই নির্ধারণ করতে হবে যে প্রতিটি কলামে কী ধরনের ডেটা থাকবে। ডেটা টাইপ সুনির্দিষ্ট করে যে কিভাবে SQL সংরক্ষিত ডেটার সাথে ইন্টারফেস করবে। এটি প্রতিটি কলামের ভিতরে কী ধরণের ডেটা প্রত্যাশিত তা নির্ধারণ করতে সহায়তা করে। MySQL 8.0-এ তিনটি প্রাথমিক ডেটা টাইপ হল স্ট্রিং, সাংখ্যিক, এবং তারিখ এবং সময়।

Try AppMaster no-code today!
Platform can build any web, mobile or backend application 10x faster and 3x cheaper
Start Free

স্ট্রিং ডেটা প্রকার
স্ট্রিং ডেটা প্রকারগুলি সাধারণত ইংরেজি বর্ণমালার অন্তর্গত অক্ষরের একটি সেট। প্রধান স্ট্রিং ডেটা প্রকারগুলি হল:

  • CHAR(আকার)
  • VARCHAR(আকার)
  • বাইনারি(আকার)
  • VARBINARY(আকার)
  • টিনিব্লব
  • TINYTEXT
  • অক্ষরের আকার)
  • BLOB(আকার)
  • মাঝারি পাঠ্য
  • মিডিয়ামব্লব
  • LONGTEXT
  • লংব্লব
  • ENUM(val_1, val_2, val_3, ...)
  • SET(val_1, val_2, val_3, ...)

এখানে SIZE মানে সংরক্ষিত ডেটা যে সর্বোচ্চ আকার নিতে পারে। একটি CHAR হল নির্দিষ্ট দৈর্ঘ্যের একটি স্ট্রিং, যখন একটি VARCHAR হল পরিবর্তনশীল স্ট্রিং দৈর্ঘ্যের একটি স্ট্রিং। এগুলি সর্বাধিক ব্যবহৃত স্ট্রিং ডেটা প্রকার। একটি BLOB হল একটি বাইনারি বড় বস্তু।

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

  • বিট(আকার)\
  • TINYINT(আকার)
  • বুল
  • বুলিয়ান
  • SMALINT(আকার)
  • MEDIUMINT(আকার)
  • INT(আকার)
  • পূর্ণসংখ্যা (আকার)
  • BIGINT(আকার)
  • ফ্লোট(আকার, ঘ)
  • ফ্লোট(পি)
  • দ্বিগুণ(আকার, ঘ)
  • দ্বিগুণ নির্ভুলতা(আকার, ঘ)
  • দশমিক (আকার, ঘ)
  • DEC(আকার, ঘ)

সর্বাধিক ব্যবহৃত সংখ্যাসূচক ডেটা টাইপ হল INT । এটি অ-দশমিক সংখ্যা ধারণ করতে ব্যবহৃত হয়, যখন FLOAT এর ডেটা প্রকার সহ ভেরিয়েবল দশমিক সংখ্যা ধারণ করতে ব্যবহৃত হয়। BOOL ডেটা টাইপে, শূন্যকে মিথ্যা হিসাবে বিবেচনা করা হয়, এবং অ-শূন্য মানগুলিকে সত্য বলে ধরা হয়।

তারিখ এবং সময়
তারিখ এবং সময় ডেটা প্রকারগুলি তারিখ ডেটা ধরে রাখতে ব্যবহৃত হয়। প্রধান তারিখ এবং সময় ডেটা প্রকারগুলি হল:

  • তারিখ
  • DATETIME(fsp)
  • টাইমস্ট্যাম্প(fsp)
  • TIME(fsp)
  • বছর

এসকিউএল সার্ভার ডেটা টাইপগুলি উপরে প্রদত্ত ডেটা টাইপের মতো কিন্তু ছোট সিনট্যাক্টিক্যাল পার্থক্য সহ।

SQL সার্ভারে ভেরিয়েবলের ধরন কি কি?

MS SQL সার্ভারে ভেরিয়েবলের দুটি বিভাগ বিদ্যমান:

স্থানীয় পরিবর্তনশীল

একজন ব্যবহারকারী একটি স্থানীয় পরিবর্তনশীল ঘোষণা করে। এটি সর্বদা @ দিয়ে শুরু হয়। প্রতিটি স্থানীয় ভেরিয়েবলের সুযোগ ব্যাচ বা প্রক্রিয়ার জন্য সীমাবদ্ধ যা এখন একটি নির্দিষ্ট সেশনের মধ্যে চলছে। একটি Transact-SQL লোকাল ভেরিয়েবল হল এক ধরণের অবজেক্ট যা শুধুমাত্র একটি বিশেষ ধরনের ডেটা মান সঞ্চয় করতে পারে। স্ক্রিপ্ট এবং ব্যাচগুলি প্রায়শই ভেরিয়েবল নিয়োগ করে:

  • একটি কাউন্টার হিসাবে, হয় লুপের পুনরাবৃত্তি হার পরিচালনা করতে বা এটি কতবার কার্যকর করা হয় তা ট্র্যাক রাখতে।
  • একটি ডেটা মান সংরক্ষণ করতে যা একটি নিয়ন্ত্রণ-অফ-প্রবাহ চেকের মাধ্যমে করা হবে।
  • একটি ডেটা মান ধরে রাখতে যা একটি ফাংশন রিটার্ন মান প্রদান করবে।

গ্লোবাল পরিবর্তনশীল

সিস্টেম গ্লোবাল ভেরিয়েবল আপ রাখে. ব্যবহারকারীরা তাদের সর্বজনীন করতে পারবেন না। @@ যেখানে গ্লোবাল ভেরিয়েবল শুরু হয়। এটি সেশন সম্পর্কে ডেটা রাখে।

একটি পরিবর্তনশীল ঘোষণা

এটি সাহায্য করবে যদি আপনি একটি ব্যাচ বা প্রক্রিয়াতে এটি ব্যবহার করার আগে কোনো পরিবর্তনশীল সংজ্ঞায়িত করেন। DECLARE কমান্ড ব্যবহার করে মেমরি অবস্থান প্রতিস্থাপন ভেরিয়েবল ঘোষণা করা হয়। একটি ভেরিয়েবল শুধুমাত্র পরবর্তী ব্যাচ বা পদ্ধতির ধাপে ঘোষণা করার পরেই ব্যবহার করা যেতে পারে।

একটি ভেরিয়েবল ঘোষণা করার জন্য TSQL সিনট্যাক্স এইরকম দেখায়:

ঘোষণা করুন { @LOCAL_VARIABLE[AS] data_type [ = value ] }

প্রোগ্রামার একটি সংজ্ঞায়িত চলকের মান নির্ধারণ করতে পারে:

  • DECLARE কীওয়ার্ড দিয়ে পরিবর্তনশীল ঘোষণার প্রক্রিয়ায়
  • SET ব্যবহার করে
  • SELECT ব্যবহার করে

এসকিউএল-এ ডেটা টাইপ গুরুত্বপূর্ণ কেন?

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

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

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

Try AppMaster no-code today!
Platform can build any web, mobile or backend application 10x faster and 3x cheaper
Start Free

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

একাধিক টেবিল একই প্রাথমিক কী থাকতে পারে?

হ্যাঁ. বেশ কয়েকটি টেবিলে, প্রাথমিক কী একই কলামের নাম ভাগ করতে পারে। একটি টেবিলের ভিতরে, কলামের নাম অবশ্যই আলাদা হতে হবে। কারণ এটি সত্তার অখণ্ডতা নির্ধারণ করে, একটি টেবিলে শুধুমাত্র একটি প্রাথমিক কী থাকতে পারে। প্রতিটি টেবিলে একটি প্রাথমিক কী থাকতে পারে তবে এটির প্রয়োজন নেই। কোন দুটি সারি একই প্রাথমিক কী ভাগ করতে পারে না, প্রাথমিক কী হিসাবে মনোনীত কলাম বা কলামগুলির জন্য ধন্যবাদ৷ একটি টেবিলের প্রাথমিক কীটি অন্য টেবিলের রেকর্ড সনাক্ত করতে এবং দ্বিতীয়টির প্রাথমিক কীটির একটি অংশ হতে ব্যবহার করা যেতে পারে।

আমি কিভাবে একটি প্রাথমিক কীতে "অর্ডার বাই" ব্যবহার করব?

ফলাফল সেট সাজানোর জন্য ORDER BY কমান্ড ব্যবহার করা যেতে পারে। এটি আরোহী বা অবরোহী ক্রমে হতে পারে। রেকর্ডগুলি সাধারণত ক্রমবর্ধমান ক্রমে ORDER BY কীওয়ার্ড ব্যবহার করে সাজানো হয়। আপনি DESC কীওয়ার্ড ব্যবহার করে এন্ট্রিগুলিকে নিচের ক্রমে সাজাতে পারেন।

অর্ডারের সিনট্যাক্স দেখতে এইরকম:

কলাম_1, কলাম_2, ... নির্বাচন করুন

টেবিল_নাম থেকে

কলাম_1, কলাম_2, ... ASC|DESC দ্বারা অর্ডার করুন;

উদাহরণস্বরূপ, অনুমান করুন ব্যবহারকারী নামে একটি টেবিল আছে; ব্যবহারকারীদের শহরের উপর ভিত্তি করে আপনি এটিকে আরোহী বা অবরোহী ক্রমে সাজাতে পারেন।

ব্যবহারকারীদের থেকে * নির্বাচন করুন

শহর দ্বারা আদেশ;

নিচের ক্রমে একই সাজাতে:

ব্যবহারকারীদের থেকে * নির্বাচন করুন

সিটি DESC দ্বারা অর্ডার;

প্রাথমিক কীতে অর্ডার করুন

প্রাইমারি কী-এর নামের উপর সাধারণের মতো ORDER BY ব্যবহার করুন, যেমন "Rollid":

আমার_টেবিল থেকে * নির্বাচন করুন যেখানে col_1 < 5 ORDER BY RollID;

ক্যোয়ারী অপ্টিমাইজার কিভাবে কোয়েরি মূল্যায়ন করার সিদ্ধান্ত নেয় তার উপর ভিত্তি করে ORDER BY মোকাবেলার জন্য সেট করা কোয়েরি ফলাফলে সক্রিয় বাছাই করার পরিবর্তে বাছাই বিশ্লেষণের জন্য প্রাথমিক কী সূচক কাঠামো ব্যবহার করার সিদ্ধান্ত নিতে পারে বা নাও পারে।

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

কোন কোড ডেভেলপমেন্ট নেই

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

low-code-no-code

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

উপসংহার

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

এসকিউএল-এর গভীরে যাওয়ার আগে, আমাদের এর মৌলিক কমান্ড এবং সিনট্যাক্সের সাথে নিজেদের পরিচিত করতে হবে। উপরোক্ত নিবন্ধের মাধ্যমে, আমরা এসকিউএল-এ ব্যবহৃত মৌলিক বিবৃতিগুলি সম্পর্কে আরও জানতে পারি, যেমন টেবিল তৈরি করুন, INSERT INTO, নির্বাচন করুন এবং আরও অনেক কিছু।

সম্পর্কিত পোস্ট

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

AppMaster এর শক্তি বোঝার সর্বোত্তম উপায় হল এটি নিজের জন্য দেখা। বিনামূল্যে সাবস্ক্রিপশন সহ কয়েক মিনিটের মধ্যে আপনার নিজের অ্যাপ্লিকেশন তৈরি করুন

জীবনে আপনার আইডিয়া আনুন