From 0c3a95ce07560b94213936b933a4ac90409b2e63 Mon Sep 17 00:00:00 2001 From: Maciekxdabu <40292375+Maciekxdabu@users.noreply.github.com> Date: Thu, 15 Dec 2022 09:13:38 +0100 Subject: [PATCH] some changes - working date - wokring variable - new alter script --- SQL stuff/alterscript.sql | 16 +++++++ SQL stuff/generate_lab-4.sql | 83 +++++++++++++++++------------------- 2 files changed, 54 insertions(+), 45 deletions(-) create mode 100644 SQL stuff/alterscript.sql diff --git a/SQL stuff/alterscript.sql b/SQL stuff/alterscript.sql new file mode 100644 index 00000000..a94cbfd3 --- /dev/null +++ b/SQL stuff/alterscript.sql @@ -0,0 +1,16 @@ +alter table manager + DISABLE constraint manager_club_fk; + +alter table club + DISABLE constraint club_manager_fk; +alter table club + DISABLE constraint club_competition_fk; + + +alter table manager + ENABLE constraint manager_club_fk; + +alter table club + ENABLE constraint club_manager_fk; +alter table club + ENABLE constraint club_competition_fk; \ No newline at end of file diff --git a/SQL stuff/generate_lab-4.sql b/SQL stuff/generate_lab-4.sql index 4f3a68eb..3c813103 100644 --- a/SQL stuff/generate_lab-4.sql +++ b/SQL stuff/generate_lab-4.sql @@ -1,13 +1,9 @@ --variable loops number ---loops := 1000; +--loops := 10; + + -alter table manager - DISABLE constraint manager_club_fk; -alter table club - DISABLE constraint club_manager_fk; -alter table club - DISABLE constraint club_competition_fk; truncate table takes_part_in cascade;-- truncate table takes_place_in cascade;-- @@ -18,6 +14,9 @@ truncate table manager cascade;-- truncate table club cascade;-- truncate table competition cascade;--competition is last since it has no foreign keys (but club holds a foreign key to competition) +declare loops number := 10; +begin + --create table countryTable (Cname varchar(20)) -- --insert into table countryTable values('Poland') @@ -35,7 +34,7 @@ insert into competition DBMS_RANDOM.value(1,5) as reputation --into competionTemp from dual -connect by level <=1000 +connect by level <=loops ; insert into manager @@ -47,7 +46,7 @@ insert into manager DBMS_RANDOM.value(0,1000000) as wage, level as club_id from dual -connect by level <=1000 +connect by level <=10 ; insert into club @@ -58,10 +57,10 @@ insert into club DBMS_RANDOM.value(1,5)as training_ground_quality, DBMS_RANDOM.value(1,5) as reputation, dbms_random.string('A', 6) as country_of_origin, - dbms_random.value(1,1000) as competition_id, --https://stackoverflow.com/questions/27879874/how-to-get-random-foreign-key-in-sql-developer + dbms_random.value(1,10) as competition_id, --https://stackoverflow.com/questions/27879874/how-to-get-random-foreign-key-in-sql-developer level as manager_id from dual -connect by level <=1000 +connect by level <=10 ; -- attempt at getting random id from competition: (SELECT id FROM competition SAMPLE(1) WHERE rownum = 1) @@ -77,23 +76,23 @@ insert into stadium DBMS_RANDOM.value(0,200) as ticket_price, level as club_id from dual -connect by level <=1000 +connect by level <=10 ; ---insert into match --- select --- level +(select nvl(max(id),0) from match) as id, --- DBMS_RANDOM.value(0,100) as score, --- DBMS_RANDOM.value(1,5) as rating, --- DBMS_RANDOM.value(0, 40000) as attendance, --- dbms_random.string('A', 6) as weather, --- DBMS_RANDOM.value(0,120) as duration, --- TODOTODOTODOTODO as match.date, --- dbms_random.string('A', 6) as referee_name, --- level as competition_id --- from dual ---connect by level <=1000 ---; +insert into match + select + level +(select nvl(max(id),0) from match) as id, + DBMS_RANDOM.value(0,100) as score, + DBMS_RANDOM.value(1,5) as rating, + DBMS_RANDOM.value(0, 40000) as attendance, + dbms_random.string('A', 6) as weather, + DBMS_RANDOM.value(0,120) as duration, + To_date(TRUNC(DBMS_RANDOM.VALUE(TO_CHAR(DATE '1950-01-01','J') ,TO_CHAR(DATE '2001-12-31','J'))), 'J') as date2, + dbms_random.string('A', 6) as referee_name, + level as competition_id + from dual +connect by level <=10 +; insert into player @@ -107,31 +106,25 @@ insert into player DBMS_RANDOM.value(15, 50) as age, DBMS_RANDOM.value(15, 50) as wages, DBMS_RANDOM.value(0, 1000000000) as transfer_value, - dbms_random.value(1,1000) as club_id + dbms_random.value(1,loops) as club_id from dual -connect by level <=1000 +connect by level <=loops ; ---insert into takes_part_in --- select --- level as club_id, --- level as match_id --- from dual ---connect by level <=1000 ---; +insert into takes_part_in + select + dbms_random.value(1,loops) as club_id, + dbms_random.value(1,loops) as match_id + from dual +connect by level <=loops +; insert into takes_place_in select - dbms_random.value(1,1000) as stadium_id, - dbms_random.value(1,1000) as competition_id + dbms_random.value(1,loops) as stadium_id, + dbms_random.value(1,loops) as competition_id from dual -connect by level <=1000 +connect by level <=loops ; -alter table manager - ENABLE constraint manager_club_fk; - -alter table club - ENABLE constraint club_manager_fk; -alter table club - ENABLE constraint club_competition_fk; \ No newline at end of file +end; \ No newline at end of file