Advertisement
Guest User

Untitled

a guest
Dec 25th, 2015
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.11 KB | None | 0 0
  1. CREATE DATABASE IF NOT EXISTS ICQ;
  2. USE ICQ;
  3.  
  4. CREATE TABLE Users (
  5. user_id INT,
  6. user_login varchar(50) NOT null unique,
  7. user_password varchar(50) not null,
  8. user_email varchar(30),
  9. PRIMARY KEY (user_id)
  10. );
  11. CREATE TABLE Messages (
  12. message_id INT,
  13. message_from INT NOT null,
  14. message_to INT NOT null,
  15. message_body varchar(150),
  16. message_date date,
  17. message_not_read bool,
  18. primary key (message_id),
  19. FOREIGN KEY (message_from)
  20. REFERENCES Users (user_id)
  21. ON UPDATE NO ACTION ON DELETE NO ACTION
  22. );
  23. CREATE TABLE Permissions (
  24. permission_id INT,
  25. permission_title varchar(10),
  26. primary key (permission_id)
  27. );
  28. CREATE TABLE Users_To_Permissions (
  29. user_id INT,
  30. permission_id INT,
  31. primary key (user_id , permission_id),
  32. FOREIGN KEY (user_id)
  33. REFERENCES Users (user_id)
  34. ON UPDATE NO ACTION ON DELETE NO ACTION,
  35. FOREIGN KEY (permission_id)
  36. REFERENCES Permissions (permission_id)
  37. ON UPDATE NO ACTION ON DELETE NO ACTION
  38. );
  39.  
  40. #DELIMITER $$
  41. #DROP TRIGGER IF EXISTS ICQ.Messages_BINS$$
  42. #USE `ICQ`$$
  43. #CREATE DEFINER=`root`@`localhost` TRIGGER `Messages_BINS` BEFORE INSERT ON `Messages` FOR EACH ROW
  44. #BEGIN
  45. # DECLARE user_id INT;
  46. # SET user_id=(select utp.user_id from Users_To_Permissions utp where utp.user_id=NEW.message_from);
  47. # IF user_id IS NULL THEN
  48. # SIGNAL sqlstate '45001' SET message_text = "Невозможно выполнить операцию. У пользователя нет прав!";
  49. # END IF;
  50. #END$$
  51. #DELIMITER ;
  52.  
  53.  
  54. INSERT INTO Permissions values(1,'Admin');
  55. INSERT INTO Permissions values(2,'Moderator');
  56. INSERT INTO Permissions values(3,'User');
  57.  
  58. INSERT INTO Users values(1,'User1','1234','u1@gmail.com');
  59. INSERT INTO Users values(2,'User2','1234','u2@gmail.com');
  60. INSERT INTO Users values(3,'User3','1234','u1@gmail.com');
  61. INSERT INTO Users values(4,'User4','1234','u1@gmail.com');
  62. INSERT INTO Users values(5,'User5','1234','u1@gmail.com');
  63. INSERT INTO Users values(6,'Admin1','1234','a1@gmail.com');
  64.  
  65. INSERT INTO Users_To_Permissions values(1,3),(2,3),(3,3),(4,3),(5,3),(6,1);
  66. INSERT INTO Messages values(1,1,2,"HI! 1",NOW(),true);
  67. INSERT INTO Messages values(2,1,2,"HI! 2",NOW(),true);
  68. INSERT INTO Messages values(3,1,2,"HI! 3",NOW(),true);
  69. INSERT INTO Messages values(4,1,2,"HI! 4",NOW(),false);
  70. INSERT INTO Messages values(5,1,2,"HI! 5",NOW(),true);
  71. INSERT INTO Messages values(6,1,2,"HI! 6",NOW(),false);
  72.  
  73. INSERT INTO Messages values(7,2,4,"HI!",NOW(),true);
  74. INSERT INTO Messages values(8,2,4,"HI!",NOW(),true);
  75. INSERT INTO Messages values(9,2,4,"HI!",NOW(),false);
  76. INSERT INTO Messages values(10,2,4,"HI!",NOW(),true);
  77.  
  78. INSERT INTO Messages values(11,3,1,"HI!",NOW(),true);
  79. INSERT INTO Messages values(12,3,1,"HI!",NOW(),true);
  80. INSERT INTO Messages values(13,3,1,"HI!",NOW(),true);
  81. INSERT INTO Messages values(14,3,1,"HI!",NOW(),true);
  82. INSERT INTO Messages values(15,3,1,"HI!",NOW(),true);
  83.  
  84. INSERT INTO Messages values(16,5,4,"HI!",NOW(),false);
  85. INSERT INTO Messages values(17,5,4,"HI!",NOW(),false);
  86. INSERT INTO Messages values(18,3,1,"HI!",NOW(),true);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement