Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
681
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.44 KB | None | 0 0
  1. DROP DATABASE IF EXISTS cs336g32;
  2. CREATE DATABASE cs336g32;
  3. USE cs336g32;
  4.  
  5. DROP TABLE IF EXISTS users;
  6. DROP TABLE IF EXISTS rideOffers;
  7. DROP TABLE IF EXISTS rides;
  8. DROP TABLE IF EXISTS rating;
  9. DROP TABLE IF EXISTS messages;
  10.  
  11. CREATE TABLE users(
  12. username VARCHAR(20) UNIQUE NOT NULL,
  13. password VARCHAR(50) NOT NULL,
  14. email VARCHAR(30) UNIQUE NOT NULL,
  15. name VARCHAR(20),
  16. address VARCHAR(50),
  17. phone VARCHAR(16),
  18. carDesc VARCHAR(20) DEFAULT "None",
  19. carNumPassengers INT DEFAULT "0",
  20. type VARCHAR(5) DEFAULT "user",
  21. PRIMARY KEY (username)
  22. );
  23.  
  24. CREATE TABLE rideOffers(
  25. rideId INT UNIQUE NOT NULL AUTO_INCREMENT,
  26. driver VARCHAR(20) NOT NULL,
  27. carDesc VARCHAR(20) NOT NULL,
  28. departure VARCHAR(20) NOT NULL,
  29. destination VARCHAR(20) NOT NULL,
  30. timeWindow VARCHAR(20) NOT NULL,
  31. recurring BOOL NOT NULL DEFAULT "0",
  32. PRIMARY KEY(rideId),
  33. FOREIGN KEY(driver) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE
  34. );
  35.  
  36. CREATE TABLE rideRequests(
  37. rideId INT UNIQUE NOT NULL AUTO_INCREMENT,
  38. rider VARCHAR(20) NOT NULL,
  39. departure VARCHAR(20) NOT NULL,
  40. destination VARCHAR(20) NOT NULL,
  41. timeWindow VARCHAR(20) NOT NULL,
  42. recurring BOOL NOT NULL DEFAULT "0",
  43. PRIMARY KEY(rideId),
  44. FOREIGN KEY(rider) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE
  45. );
  46.  
  47. CREATE TABLE rides(
  48. rideId INT NOT NULL,
  49. driver VARCHAR(20) NOT NULL,
  50. carDesc VARCHAR(20) NOT NULL,
  51. date DATETIME NOT NULL DEFAULT current_timestamp,
  52. PRIMARY KEY(rideId),
  53. FOREIGN KEY(rideId) REFERENCES rideRequests (rideId) ON DELETE CASCADE ON UPDATE CASCADE,
  54. FOREIGN KEY(driver) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE
  55. );
  56.  
  57. CREATE TABLE rating(
  58. userRated VARCHAR(20) NOT NULL,
  59. userRater VARCHAR(20) NOT NULL,
  60. rideId INT NOT NULL,
  61. value INT NOT NULL,
  62. comment TEXT,
  63. PRIMARY KEY(rideId, userRated, userRater),
  64. FOREIGN KEY(rideId) REFERENCES rideOffers (rideId) ON DELETE CASCADE ON UPDATE CASCADE,
  65. FOREIGN KEY(userRated) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE,
  66. FOREIGN KEY(userRater) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE
  67. );
  68.  
  69. CREATE TABLE messages(
  70. toUser VARCHAR(20) NOT NULL,
  71. fromUser VARCHAR(20) NOT NULL,
  72. body TEXT NOT NULL,
  73. FOREIGN KEY(toUser) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE,
  74. FOREIGN KEY(fromUser) REFERENCES users (username) ON DELETE CASCADE ON UPDATE CASCADE,
  75. PRIMARY KEY(toUser, fromUser)
  76. );
  77.  
  78. INSERT INTO users(username, password, email, name, address, phone, carDesc, carNumPassengers, type)
  79. VALUES ("admin", "password", "admin@rideme.com", "Administrator", "The Matrix", "1234567890", "UFO", "0", "admin");
  80. INSERT INTO users(username, password, email, name, address, phone, carDesc, carNumPassengers, type)
  81. VALUES ("support", "support", "support@hotmail.com", "Renard Tumbokon", "The Sub-Matrix", "9081234567", "Space ship", "0", "staff");
  82. INSERT INTO users(username, password, email, name, address, phone, carDesc, carNumPassengers, type)
  83. VALUES ("renard", "renard", "renard@hotmail.com", "Renard Tumbokon", "302 Cranford Ave", "9081234567", "Small ass car", "1", "user");
  84. INSERT INTO users(username, password, email, name, address, phone, carDesc, carNumPassengers, type)
  85. VALUES ("nick", "nick", "nick@hotmail.com", "Nick Prezioso", "10 Concord Dr", "4165430986", "Big ass truck", "4", "user");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement