The following is the script for the SQL: set sql_safe_updates=0; drop table if exists message;  drop table if exists person; create table person ( pid integer primary key, pname varchar(20) not null, msgs_sent integer default 0, msgs_rcvd integer default 0 ); create table message ( msg varchar(200) not null, sendtime datetime, senderid integer, receiverid integer, constraint message_pk primary key (sendtime,senderid,receiverid), constraint message_fk1 foreign key (senderid) references person(pid), constraint message_fk2 foreign key (receiverid) references person(pid) ); DROP TRIGGER IF EXISTS MESSAGE_SEND; set sql_safe_updates=0; DELIMITER $$ CREATE TRIGGER MESSAGE_SEND BEFORE INSERT ON message FOR EACH ROW  BEGIN  update person set msgs_sent = msgs_sent+1 where pid=new.senderid; update person set msgs_rcvd = msgs_rcvd+1 where pid=new.receiverid; END $$  DELIMITER ; In SQL script create a trigger that fires on deletes to 'message', to keep the sent/received counts correct even when messages are deleted. Test it by a. Creating some message from BATMAN0 to BATMAN1 b. Doing SELECT * FROM person WHERE pid=1000; c. Deleting the message you just created. d. Doing SELECT * FROM person WHERE pid=1000; which should show the mesgs_sent decreasing by 1.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

The following is the script for the SQL:

set sql_safe_updates=0;

drop table if exists message; 

drop table if exists person;

create table person ( pid integer primary key, pname varchar(20) not null, msgs_sent integer default 0, msgs_rcvd integer default 0 );

create table message ( msg varchar(200) not null, sendtime datetime, senderid integer, receiverid integer, constraint message_pk primary key (sendtime,senderid,receiverid),

constraint message_fk1 foreign key (senderid) references person(pid),

constraint message_fk2 foreign key (receiverid) references person(pid) );

DROP TRIGGER IF EXISTS MESSAGE_SEND;
set sql_safe_updates=0;
DELIMITER $$
CREATE TRIGGER MESSAGE_SEND BEFORE INSERT ON message
FOR EACH ROW 
BEGIN 
update person set msgs_sent = msgs_sent+1 where pid=new.senderid;
update person set msgs_rcvd = msgs_rcvd+1 where pid=new.receiverid;
END $$ 
DELIMITER ;

In SQL script create a trigger that fires on deletes to 'message', to keep the sent/received counts correct even when messages are deleted. Test it by

a. Creating some message from BATMAN0 to BATMAN1

b. Doing SELECT * FROM person WHERE pid=1000;

c. Deleting the message you just created.

d. Doing SELECT * FROM person WHERE pid=1000; which should show the mesgs_sent decreasing by 1.

Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY