কম্পিউটার

মাইএসকিউএল-এর বিভিন্ন টেবিলে কীভাবে প্রাথমিক কী বিদেশী হিসাবে উল্লেখ করবেন?


নিম্নলিখিত সিনট্যাক্স −

alter table yourSecondTableName
add constraint `yourConstraintName`
foreign key(`yourSecondTableNamePrimaryKey`)
references yourFirstTableName(yourFirstTablePrimaryKeyColumnName);

উপরের সিনট্যাক্স বোঝার জন্য প্রথমে একটি টেবিল তৈরি করা যাক −

mysql> create table demo65
−> (
−> id int not null primary key,
−> name varchar(20)
−> );
Query OK, 0 rows affected (0.57 sec)

দ্বিতীয় টেবিল −

তৈরি করার প্রশ্নটি নিচে দেওয়া হল
mysql> create table demo66
−> (
−> user_id int not null primary key,
−> address varchar(200)
−> );
Query OK, 0 rows affected (1.80 sec)

প্রাথমিক কী-কে একটি বিদেশী কী হিসাবে উল্লেখ করার জন্য নিম্নোক্ত ক্যোয়ারী −

mysql> alter table demo66
−> add constraint `id_fk`
−> foreign key(`user_id`)
−> references demo65(id);
Query OK, 0 rows affected (3.76 sec)
Records: 0 Duplicates: 0 Warnings: 0

SHOW CREATE TABLE কমান্ড ব্যবহার করে টেবিলের সামগ্রিক বিবরণ পরীক্ষা করা যাক। নিচের প্রশ্নটি −

mysql> show create table demo66;

এটি নিম্নলিখিত আউটপুট −

তৈরি করবে
+--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table +--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| demo66 | CREATE TABLE `demo66` (
`user_id` int NOT NULL,
`address` varchar(200) DEFAULT NULL,
PRIMARY KEY (`user_id`),
CONSTRAINT `id_fk` FOREIGN KEY (`user_id`) REFERENCES `demo65` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+--------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

  1. যেকোন মাইএসকিউএল টেবিলে ক্যান্ডিডেট কী কীভাবে প্রয়োগ করবেন?

  2. কিভাবে আমি MySQL এ একটি প্রাথমিক কী ড্রপ করব?

  3. মাইএসকিউএল-এ একটি কলাম প্রাথমিক কী কিনা তা আপনি কীভাবে পাবেন?

  4. মাইএসকিউএল-এ বিদেশী কী ব্যবহার করা