Advertisement
Guest User

Untitled

a guest
Sep 24th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.46 KB | None | 0 0
  1. drop database if exists `test`;
  2.  
  3. create database `test`
  4. character set 'utf8';
  5.  
  6. use `test`;
  7.  
  8. create table `groups`(
  9. `id` int primary key auto_increment,
  10. `title` varchar(100) unique
  11. ) engine = InnoDB;
  12.  
  13. create table `modules`(
  14. `id` int primary key auto_increment,
  15. `title` varchar(30) unique
  16. ) engine = InnoDB;
  17.  
  18. create table `actions`(
  19. `id` int primary key auto_increment,
  20. `title` varchar(30),
  21. `module_id` int,
  22.  
  23. foreign key (`module_id`) references `modules`(`id`)
  24. ) engine = InnoDB;
  25.  
  26. create table `group_permissions`(
  27. `group_id` int,
  28. `action_id` int,
  29. `flag` boolean default false,
  30.  
  31. foreign key (`group_id`) references `groups`(`id`),
  32. foreign key (`action_id`) references `actions`(`id`)
  33. ) engine = InnoDB;
  34.  
  35. create table `users`(
  36. `id` int primary key auto_increment,
  37. `login` varchar(30) unique,
  38. `password` char(32),
  39. `group_id` int,
  40. `state` boolean default false,
  41. `createdOn` int,
  42. `modifiedOn` int,
  43.  
  44. foreign key (`group_id`) references `groups`(`id`)
  45. ) engine = InnoDB;
  46.  
  47. create table `sertificates`(
  48. `id` int primary key auto_increment,
  49. `title` varchar(100) unique,
  50. `power` tinyint,
  51. `createdOn` int,
  52. `modifiedOn` int
  53. ) engine = InnoDB;
  54.  
  55. create table `user_sertificates`(
  56. `user_id` int,
  57. `given_by` int,
  58. `sertificate_id` int,
  59. `createdOn` int,
  60. `expireOn` int,
  61.  
  62. foreign key (`user_id`) references `users`(`id`),
  63. foreign key (`given_by`) references `users`(`id`),
  64. foreign key (`sertificate_id`) references `sertificates`(`id`)
  65. ) engine = InnoDB;
  66.  
  67. create table `sertificate_permissions`(
  68. `sertificate_id` int,
  69. `action_id` int,
  70. `flag` boolean default false,
  71.  
  72. foreign key (`sertificate_id`) references `sertificates`(`id`),
  73. foreign key (`action_id`) references `actions`(`id`)
  74. ) engine = InnoDB;
  75.  
  76.  
  77. INSERT INTO `modules` VALUES (2,'gb'),(1,'lib');
  78.  
  79. INSERT INTO `actions` VALUES (1,'download',1),(2,'view',1),(3,'add',2),(4,'delete',2);
  80.  
  81. INSERT INTO `groups` VALUES (1,'users');
  82. INSERT INTO `groups` VALUES (2,'moderes');
  83.  
  84. INSERT INTO `group_permissions` VALUES (1,2,1),(1,1,0),(1,3,1),(1,4,0);
  85. INSERT INTO `group_permissions` VALUES (2,2,1),(2,1,1),(2,3,1),(2,4,0);
  86.  
  87. INSERT INTO `users` VALUES (1,'just_a_user',NULL,1,0,1310862915,0);
  88. INSERT INTO `users` VALUES (2,'a moder',NULL,2,0,1310875518,0);
  89.  
  90. INSERT INTO `user_sertificates` VALUES (1,2,1,1310875594,0),(1,2,2,1310876807,0);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement