Advertisement
a4ary4n

sql_commands

Apr 15th, 2021 (edited)
526
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 2.29 KB | None | 0 0
  1. CREATE DATABASE solarspace;
  2.  
  3. CREATE TABLE solarspace.USER (
  4.     username VARCHAR(30) PRIMARY KEY,
  5.     first_name VARCHAR(15) NOT NULL,
  6.     last_name VARCHAR(15) NOT NULL,
  7.     h_no INT,
  8.     locality VARCHAR(20),
  9.     city VARCHAR(20),
  10.     pincode INT,
  11.     password VARCHAR(30)
  12. );
  13.  
  14. CREATE TABLE solarspace.user_contact (
  15.     username VARCHAR(30) NOT NULL,
  16.     contact BIGINT NOT NULL,
  17.     FOREIGN KEY (username) REFERENCES solarspace.USER (username)
  18. );
  19.  
  20. CREATE TABLE solarspace.appliance (
  21.     aid INT PRIMARY KEY,
  22.     name VARCHAR(20),
  23.     POWER DECIMAL(5,2)
  24. );
  25.  
  26. CREATE TABLE solarspace.appliance_user (
  27.     username VARCHAR(30) NOT NULL,
  28.     aid INT NOT NULL,
  29.     quantity INT,
  30.     FOREIGN KEY (username) REFERENCES solarspace.USER (username),
  31.     FOREIGN KEY (aid) REFERENCES solarspace.appliance (aid)
  32. );
  33.  
  34. CREATE TABLE solarspace.MONTH (
  35.     mname VARCHAR(15) PRIMARY KEY,
  36.     days INT NOT NULL
  37. );
  38.  
  39. CREATE TABLE solarspace.location (
  40.     l_name VARCHAR(20) PRIMARY KEY,
  41.     latitude DECIMAL(4,4),
  42.     longitude DECIMAL(4,4)
  43. );
  44.  
  45. CREATE TABLE solarspace.loc_month (
  46.     l_name VARCHAR(20) NOT NULL,
  47.     m_name VARCHAR(15) NOT NULL,
  48.     sunrays_recd DECIMAL(10,5),
  49.     ideal_power DECIMAL(5,2),
  50.     FOREIGN KEY (l_name) REFERENCES solarspace.location (l_name),
  51.     FOREIGN KEY (m_name) REFERENCES solarspace.MONTH (mname)
  52. );
  53.  
  54. CREATE TABLE solarspace.solar_panel (
  55.     sid INT PRIMARY KEY,
  56.     owner VARCHAR(30) NOT NULL,
  57.     loc_name VARCHAR(20) NOT NULL,
  58.     model VARCHAR(30),
  59.     SIZE DECIMAL(5,2),
  60.     FOREIGN KEY (owner) REFERENCES solarspace.USER (username),
  61.     FOREIGN KEY (loc_name) REFERENCES solarspace.location (l_name)
  62. );
  63.  
  64. CREATE TABLE solarspace.panel_month (
  65.     pid INT NOT NULL,
  66.     MONTH VARCHAR (15) NOT NULL,
  67.     actual_power DECIMAL(5,2),
  68.     FOREIGN KEY (pid) REFERENCES solarspace.solar_panel (sid),
  69.     FOREIGN KEY (MONTH) REFERENCES solarspace.MONTH (mname)
  70. );
  71.  
  72. CREATE TABLE solarspace.repair_person (
  73.     r_id INT PRIMARY KEY,
  74.     l_id VARCHAR(20) NOT NULL,
  75.     name VARCHAR(20),
  76.     rating INT,
  77.     shop VARCHAR(30),
  78.     FOREIGN KEY (l_id) REFERENCES solarspace.location (l_name)
  79. );
  80.  
  81. CREATE TABLE solarspace.repair_contact (
  82.     r_id INT NOT NULL,
  83.     contact INT,
  84.     FOREIGN KEY (r_id) REFERENCES solarspace.repair_person (r_id)
  85. );
  86.  
  87. CREATE TABLE solarspace.repair_skills (
  88.     r_id INT NOT NULL,
  89.     skill VARCHAR(50),
  90.     FOREIGN KEY (r_id) REFERENCES solarspace.repair_person (r_id)
  91. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement