/notes/code/sql/HW_Storm.sql (31c5cde08b6ae8f12d1e7f67df3fbeb47a0b2953) (2050 bytes) (mode 100644) (type blob)
/* code/sql/HW_Storm.sql */
DROP SCHEMA IF EXISTS HW_STORM;
CREATE SCHEMA HW_STORM;
USE HW_STORM;
-- start snippet schema
CREATE TABLE STORM (
NAME VARCHAR(25) PRIMARY KEY,
Kind ENUM ("Tropical
Storm", "Hurricane"),
WindSpeed INT,
Creation DATE
);
-- We can change the enumerated datatype:
ALTER TABLE STORM MODIFY Kind ENUM ("Tropical Storm",
"Hurricane", "Typhoon");
CREATE TABLE STATE (
NAME VARCHAR(25) UNIQUE,
Postal_abbr CHAR(2) PRIMARY KEY,
Affected_by VARCHAR(25),
FOREIGN KEY (Affected_by) REFERENCES STORM (NAME) ON
DELETE SET NULL ON UPDATE CASCADE
);
--end snippet schema
-- start snippet insert
INSERT INTO STORM
VALUES (
"Harvey",
"Hurricane",
130,
"2017-08-17");
-- In the following, the entry gets created, but date is
-- "corrected" to "2017-17-08"!
-- INSERT INTO STORM
-- VALUES ("Dummy", "Hurricane", 120,
-- "2017-17-08");
-- The error message returned is
-- ERROR 1292 (22007) at line 34:
-- Incorrect
-- date
-- value:
-- "2017-17-08" for column
-- `HW_STORM`.`STORM`.`Creation`
-- at
-- row 1
-- In the following, we explicitely use
-- "DATE",
-- and
-- since
-- the date is incorrect, nothing gets
-- inserted.
-- INSERT INTO STORM
-- VALUES ("Dummy2", "Hurricane", 120,
-- DATE
-- "2017-17-08");
-- ERROR 1525 (HY000) at line 40:
-- Incorrect
-- DATE
-- value:
-- "2017-17-08"
-- The next one sets NULL for DATE.
INSERT INTO STORM
VALUES (
"Irma",
"Tropical Storm",
102,
DEFAULT);
-- end snippet insert
-- start snippet date
INSERT INTO STATE
VALUES (
"Georgia",
"GA",
NULL);
INSERT INTO STATE
VALUES (
"Texas",
"TX",
NULL);
INSERT INTO STATE
VALUES (
"Florida",
"FL",
NULL);
-- This instruction is not using the primary key, is that a
-- problem?
UPDATE
STATE
SET Affected_by = "Harvey"
WHERE Name = "Georgia";
UPDATE
STORM
SET Name = "Harley"
WHERE Name = "Harvey";
DELETE FROM STORM
WHERE Name = "Harley";
-- end snippet date
Mode |
Type |
Size |
Ref |
File |
100644 |
blob |
15398 |
ee75155d2d99639acd17d31b2cc23cd752078e7e |
CONTRIB.md |
100644 |
blob |
20625 |
25b8e45e7f103089fb70fae5a219f09a29ef5312 |
KNOWN_BUGS.md |
100644 |
blob |
17217 |
e5c1f9f898cca948da42333b100e331d62b61d3c |
LICENSE.md |
100644 |
blob |
1997 |
f8801648fd4ba5843a2cbca8b10e4f69ba5d9b25 |
Makefile |
100644 |
blob |
6695 |
0b91924ffc7b73e2d36150369d4fd41a44b099c5 |
README.md |
040000 |
tree |
- |
eb7afc38251ada69e1967e1ce3e49967eca2267c |
install |
040000 |
tree |
- |
f16b283429b64b620b3bd7681a446ff54d504f84 |
notes |
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"
Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/caubert/CSCI_3410
Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/caubert/CSCI_3410
Clone this repository using git:
git clone git://git.rocketgit.com/user/caubert/CSCI_3410
You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a
merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main