mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2025-12-11 20:02:09 +00:00
51 lines
836 B
MySQL
51 lines
836 B
MySQL
PROMPT Creating Table 'ITEM' with auto-increment primary key 'ID'
|
|
|
|
BEGIN
|
|
EXECUTE IMMEDIATE 'DROP TABLE item';
|
|
EXCEPTION
|
|
WHEN OTHERS THEN
|
|
IF SQLCODE != -942 THEN
|
|
RAISE;
|
|
END IF;
|
|
END;
|
|
|
|
CREATE TABLE item
|
|
(
|
|
id NUMBER(6) NOT NULL,
|
|
name VARCHAR2(100) NOT NULL,
|
|
sell_in NUMBER(6) NOT NULL,
|
|
quality NUMBER(6) NOT NULL
|
|
);
|
|
/
|
|
|
|
ALTER TABLE item ADD (
|
|
CONSTRAINT item_pk PRIMARY KEY (ID));
|
|
/
|
|
|
|
BEGIN
|
|
EXECUTE IMMEDIATE 'DROP SEQUENCE item_id_seq';
|
|
EXCEPTION
|
|
WHEN OTHERS THEN
|
|
IF SQLCODE != -2289 THEN
|
|
RAISE;
|
|
END IF;
|
|
END;
|
|
|
|
CREATE SEQUENCE item_id_seq
|
|
INCREMENT BY 1
|
|
START WITH 1
|
|
MAXVALUE 999999
|
|
MINVALUE 1
|
|
NOCYCLE;
|
|
/
|
|
|
|
CREATE OR REPLACE TRIGGER item_bis_trg
|
|
BEFORE INSERT ON item
|
|
FOR EACH ROW
|
|
BEGIN
|
|
SELECT item_id_seq.NEXTVAL INTO :new.id FROM dual;
|
|
END;
|
|
/
|
|
|
|
SHOW ERRORS;
|