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

asked 26 Mar '17, 10:01

itkhansunny's gravatar image

itkhansunny
1467

আপনি কি এই সমস্যার সমাধান পেয়েছেন?

সম্ভবত এই ডিলিটের কাজ ম্যানুয়ালিই করতে হবে।

(30 Mar '17, 19:11) mahrahat

এই ক্ষেত্রে আপনাকে টেবিল বানানোর সময় কাজ করতে হবে। আপনি যখন ফরেন কি এস্যাইন করবেন তখন ON DELETE CASCADE ব্যবহার করতে হবে।নিচের উদাহরন দেখলে বুঝতে পারবেন আশা করি।

CREATE TABLE buildings (
  building_no int(11) NOT NULL AUTO_INCREMENT,
  building_name varchar(255) NOT NULL,
  address varchar(355) NOT NULL,
  PRIMARY KEY (building_no)
) ENGINE=InnoDB;

CREATE TABLE rooms (
  room_no int(11) NOT NULL AUTO_INCREMENT,
  room_name varchar(255) NOT NULL,
  building_no int(11) NOT NULL,
  PRIMARY KEY (room_no),
  KEY building_no (building_no),
  CONSTRAINT rooms_ibfk_1 
  FOREIGN KEY (building_no) 
  REFERENCES buildings (building_no) 
  ON DELETE CASCADE
) ENGINE=InnoDB;

এর ফলে আপনি যখন কোনো ডাটা buildings টেবিল থেকে ডিলিট করবেন তখন rooms টেবিল থেকে সকল ডাটা FOREIGN KEY অনুযায়ী ডিলিট হয়ে যাবে।

নিচের লিংকে আরো ভালোভাবে জানতে পারবেন লিংক

permanent link

answered 26 Apr '17, 09:26

Hyper%20Remede's gravatar image

Hyper Remede
1284

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×53
×30
×28
×10

question asked: 26 Mar '17, 10:01

question was seen: 331 times

last updated: 26 Apr '17, 09:26