2022-05-11 14:19:05 +00:00
USE project ;
2022-05-17 10:30:05 +00:00
SET GLOBAL local_infile = 1 ;
show global variables like ' local_infile ' ;
2022-05-11 14:19:05 +00:00
2022-05-04 22:01:48 +00:00
/*
2022-05-11 13:17:18 +00:00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Zusatzstoffklasse ----------------------------------
2022-05-04 22:01:48 +00:00
* /
2022-05-11 13:17:18 +00:00
LOAD DATA LOCAL INFILE ' Programmentwurf/Zusatzstoffe_Klassen.csv ' INTO TABLE Zusatzstoffklase
2022-05-04 22:01:48 +00:00
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
2022-05-11 13:17:18 +00:00
( @ b , @ g )
SET Anwendungsgrund = REGEXP_REPLACE ( @ g , ' [^a-zäöüßA-ZÄÖÜ]+ ' , ' ' ) , Anwendungsgrundbezeichnung = TRIM ( @ b ) ;
2022-04-27 09:09:52 +00:00
2022-05-11 13:17:18 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Zusatzstoff ----------------------------------
* /
DROP TEMPORARY TABLE IF EXISTS tmp_import_0 ;
CREATE TABLE IF NOT EXISTS tmp_import_0
(
E_Nummer varchar ( 5 ) ,
Zusatzstoffbezeichnung varchar ( 100 ) ,
Anwendungsgrund varchar ( 5 ) ,
primary key ( E_Nummer )
) ;
LOAD DATA LOCAL INFILE ' Programmentwurf/E_nummern.csv ' INTO TABLE tmp_import_0
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \r\n '
( @ e , @ z , @ k )
SET E_Nummer = TRIM ( @ e ) , Zusatzstoffbezeichnung = TRIM ( @ z ) , Anwendungsgrund = TRIM ( @ k ) ;
INSERT INTO Zusatzstoff ( SELECT E_Nummer , Zusatzstoffbezeichnung FROM tmp_import_0 ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Produkt ----------------------------------
* /
DROP TEMPORARY TABLE IF EXISTS tmp_import_1 ;
CREATE TABLE IF NOT EXISTS tmp_import_1
(
ProduktID int AUTO_INCREMENT ,
Produktname VARCHAR ( 100 ) ,
vegetarisch tinyint ( 1 ) ,
vegan tinyint ( 1 ) ,
primary key ( ProduktID )
) ;
2022-04-27 09:09:52 +00:00
2022-05-04 22:01:48 +00:00
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_Produkte_Portionen.csv ' INTO TABLE tmp_import_1
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 2 LINES
( @ p , @ dummy , @ dummy )
SET Produktname = TRIM ( @ p ) ;
2022-04-27 09:09:52 +00:00
2022-05-04 22:01:48 +00:00
DELETE
FROM tmp_import_1
ORDER BY ProduktID DESC
LIMIT 4 ;
2022-04-27 09:24:06 +00:00
2022-05-11 13:30:24 +00:00
INSERT INTO Produkt ( SELECT null , Produktname FROM tmp_import_1 GROUP BY Produktname ) ;
2022-05-04 22:01:48 +00:00
INSERT INTO Produkt ( Produktname )
VALUES ( ' Butter ' ) ;
INSERT INTO Produkt ( Produktname )
VALUES ( ' Snack Salat Classic ' ) ;
2022-04-27 09:24:06 +00:00
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Allergen ----------------------------------
* /
2022-04-27 09:24:06 +00:00
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE Allergen
2022-05-04 22:01:48 +00:00
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET Allergenbezeichnung = TRIM ( @ a ) ;
2022-04-27 09:24:06 +00:00
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Produktallergen ----------------------------------
* /
DROP TEMPORARY TABLE IF EXISTS tmp_import_2 ;
CREATE TABLE IF NOT EXISTS tmp_import_2
(
AllergenID int ,
ProduktID int ,
contains_allergen tinyint ( 1 ) ,
foreign key ( AllergenID ) references Allergen ( AllergenID ) ,
foreign key ( ProduktID ) references Produkt ( ProduktID ) ,
primary key ( AllergenID , ProduktID )
) ;
# Big Mac
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Big Mac ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Cheeseburger
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Cheeseburger ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Chicken McNuggets
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Chicken McNuggets ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Hamburger
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Hamburger ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Hamburger Royal TS
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Hamburger Royal TS ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# McChicken
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' McChicken ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# McRib
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' McRib ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Pommes Frites
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Pommes Frites ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Apfeltasche
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Apfeltasche ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# McSundae Karamell
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' McSundae Karamell ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# McSundae Schoko
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' McSundae Schoko ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Milchshake Erdbeergeschmack
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Milchshake Erdbeergeschmack ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Milchshake Schokogeschmack
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Milchshake Schokogeschmack ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Milchshake Vanillegeschmack
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Milchshake Vanillegeschmack ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Butter
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Butter ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Konfituere Aprikose
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Konfituere Aprikose ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Konfituere Erdbeere
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Konfituere Erdbeere ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# McCroissant
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' McCroissant ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Balsamico Dressing
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Balsamico Dressing ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Barbecue Sauce
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Barbecue Sauce ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Chili Sauce
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Chili Sauce ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Curry Sauce
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Curry Sauce ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Ketchup
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Ketchup ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Mayonnaise (80%)
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Mayonnaise (80%) ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Sauce suesssauer
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Sauce suesssauer ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Senfsauce
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Senfsauce ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Snack Salat Classic
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_produkte_Allergene.csv ' INTO TABLE tmp_import_2
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 1 LINES
( @ a , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy ,
@ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ dummy , @ b , @ dummy )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = ' Snack Salat Classic ' ) , AllergenID = ( SELECT AllergenID
FROM Allergen
WHERE Allergenbezeichnung = TRIM ( @ a ) ) , contains_allergen = TRIM ( @ b ) ;
# Warum ist das zweimal in MD_produkte_Allergene.csv?????
# # Apfeltasche
# LOAD DATA LOCAL INFILE 'Programmentwurf/MD_produkte_Allergene.csv' INTO TABLE tmp_import_2
# CHARACTER SET latin1
# FIELDS terminated by ';'
# LINES TERMINATED BY '\n'
# IGNORE 1 LINES
# (@a, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @dummy, @b)
# SET ProduktID = (SELECT ProduktID from Produkt WHERE Produktname = 'Apfeltasche'), AllergenID = (SELECT AllergenID FROM Allergen WHERE Allergenbezeichnung = TRIM(@a)), contains_allergen = TRIM(@b);
2022-05-11 13:30:24 +00:00
INSERT INTO enthaeltAllergen ( SELECT AllergenID , ProduktID FROM tmp_import_2 WHERE contains_allergen = 1 ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Menge ----------------------------------
* /
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_Produkte_Portionen.csv ' INTO TABLE Menge
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 2 LINES
( @ produkt , @ menge1 , @ menge2 )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = @ produkt ) , Menge = ( IF ( @ menge1 ! = ' - ' , ( REPLACE ( @ menge1 , ' g ' , ' ' ) ) ,
( REPLACE ( @ menge2 , ' ml ' , ' ' ) ) ) ) , Einheit = ( IF ( @ menge1 ! = ' - ' , ' g ' , ' ml ' ) ) ;
DELETE
FROM Menge
ORDER BY MengenID DESC
LIMIT 4 ;
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- enthält Zusatzstoff ----------------------------------
* /
2022-05-11 13:17:18 +00:00
DROP TABLE IF EXISTS tmp_import_3 ;
CREATE TABLE IF NOT EXISTS tmp_import_3
(
Produkt_name VARCHAR ( 100 ) ,
E_Nummern VARCHAR ( 100 )
) ;
2022-05-04 22:01:48 +00:00
2022-05-11 13:17:18 +00:00
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_Produkte_Enummern.csv ' REPLACE INTO TABLE tmp_import_3
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
( @ col1 , @ col2 ) SET Produkt_Name = trim ( @ col1 ) , E_Nummern = trim ( @ col2 ) ;
2022-05-04 22:01:48 +00:00
2022-05-11 13:17:18 +00:00
DROP TABLE IF EXISTS tmp_import_4 ;
CREATE TABLE IF NOT EXISTS tmp_import_4
(
id int NOT NULL auto_increment ,
E_Nummern VARCHAR ( 100 ) ,
PRIMARY KEY ( id )
) ;
2022-05-04 22:01:48 +00:00
2022-05-11 13:17:18 +00:00
DROP TABLE IF EXISTS tmp_import_5 ;
CREATE TABLE IF NOT EXISTS tmp_import_5
(
Produkt_Name varchar ( 100 ) ,
E_nummern VARCHAR ( 100 )
) ;
/* Delete all seperators and create new rows */
INSERT INTO tmp_import_5 ( Produkt_Name , E_Nummern )
SELECT Produkt_Name ,
SUBSTRING_INDEX ( SUBSTRING_INDEX ( tmp_import_3 . E_Nummern , ' , ' , numbers . n ) , ' , ' , - 1 )
FROM ( SELECT 1 n
UNION ALL
SELECT 2
UNION ALL
SELECT 3
UNION ALL
SELECT 4 ) numbers
INNER JOIN tmp_import_3
ON CHAR_LENGTH ( tmp_import_3 . E_Nummern )
- CHAR_LENGTH ( REPLACE ( tmp_import_3 . E_Nummern , ' , ' , ' ' ) ) > = numbers . n - 1 ;
UPDATE tmp_import_5
SET Produkt_name = ( SELECT ProduktID FROM Produkt WHERE Produktname = Produkt_name ) ;
INSERT INTO enthaeltZusatzstoff ( SELECT Produkt_Name ,
E_nummern ,
( SELECT Anwendungsgrund FROM tmp_import_0 WHERE E_Nummer = E_nummern )
FROM tmp_import_5
WHERE Produkt_Name IN ( SELECT ProduktID FROM Produkt )
AND E_nummern IN ( SELECT E_Nummer FROM Zusatzstoff ) ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Naehrwerte ----------------------------------
* /
2022-05-05 09:35:01 +00:00
LOAD DATA LOCAL INFILE ' Programmentwurf/MD_Produkte_Naehrwerte.csv ' INTO TABLE Naehrwerte
CHARACTER SET latin1
FIELDS terminated by ' ; '
LINES TERMINATED BY ' \n '
IGNORE 2 LINES
( @ produkt , @ menge1 , @ menge2 , @ kcal , @ ew , @ kh , @ fett )
SET ProduktID = ( SELECT ProduktID
from Produkt
WHERE Produktname = @ produkt ) , Menge = ( IF ( @ menge1 ! = ' - ' , ( REPLACE ( @ menge1 , ' g ' , ' ' ) ) ,
2022-05-11 13:17:18 +00:00
( REPLACE ( @ menge2 , ' ml ' , ' ' ) ) ) ) , Einheit = ( IF ( @ menge1 ! = ' - ' , ' g ' , ' ml ' ) ) , Kohlenhydrate = @ kh , Eiweiss = @ ew ,
Fett = CAST ( REPLACE ( REPLACE ( @ fett , CHAR ( 13 ) , ' ' ) , CHAR ( 10 ) , ' ' )
as double ) , Brennwert = @ kcal ;
# Issue at last four lines: ProduktID cannot be null, ...
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- eigene Datensätze ----------------------------------
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Personen ----------------------------------
* /
INSERT INTO Person ( Personenname , Personenvorname , Naehrwertziel , Ernaerungsstil )
VALUES ( ' Kaiser ' , ' Florian ' , 5000 , null ) ;
INSERT INTO Person ( Personenname , Personenvorname , Naehrwertziel , Ernaerungsstil )
VALUES ( ' Amtmann ' , ' Leon ' , 10000 , null ) ;
2022-05-11 13:17:18 +00:00
INSERT INTO Person ( Personenname , Personenvorname , Naehrwertziel , Ernaerungsstil )
VALUES ( ' Mustermann ' , ' Max ' , 15000 , null ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Allergie ----------------------------------
* /
INSERT INTO Allergie ( PersonID , AllergenID )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Kaiser ' ) ,
( SELECT AllergenID FROM Allergen WHERE Allergenbezeichnung = ' Glutenhaltiges Getreide ' ) ) ;
2022-05-11 13:17:18 +00:00
INSERT INTO Allergie ( PersonID , AllergenID )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Kaiser ' ) ,
( SELECT AllergenID FROM Allergen WHERE Allergenbezeichnung = ' Erdnuesse ' ) ) ;
INSERT INTO Allergie ( PersonID , AllergenID )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Amtmann ' ) ,
( SELECT AllergenID FROM Allergen WHERE Allergenbezeichnung = ' Sesamsamen ' ) ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Menu ----------------------------------
* /
INSERT INTO Menu ( Menuname )
VALUES ( ' Test Menu ' ) ;
2022-05-11 13:17:18 +00:00
INSERT INTO Menu ( Menuname )
VALUES ( ' Test Menu #2 ' ) ;
INSERT INTO Menu ( Menuname )
VALUES ( ' Test Menu #3 ' ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Menucontent ----------------------------------
* /
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu ' ) ,
2022-05-11 13:17:18 +00:00
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Butter ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Pommes Frites ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Curry Sauce ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #2 ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Ketchup ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #2 ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Big Mac ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #2 ' ) ,
2022-05-04 22:01:48 +00:00
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Cheeseburger ' ) ) ;
2022-05-11 13:17:18 +00:00
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #3 ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Cheeseburger ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #3 ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' McSundae Karamell ' ) ) ;
INSERT INTO Menucontent ( MenuID , ProduktID )
VALUES ( ( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #3 ' ) ,
( SELECT ProduktID FROM Produkt WHERE Produktname = ' Big Mac ' ) ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- konsumiert ----------------------------------
* /
INSERT INTO konsumiert ( PersonID , MenuID , Datum )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Kaiser ' ) ,
( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu ' ) , now ( ) ) ;
2022-05-11 13:17:18 +00:00
INSERT INTO konsumiert ( PersonID , MenuID , Datum )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Amtmann ' ) ,
( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #2 ' ) , now ( ) ) ;
INSERT INTO konsumiert ( PersonID , MenuID , Datum )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Kaiser ' ) ,
( SELECT MenuID FROM Menu WHERE Menuname = ' Test Menu #2 ' ) , now ( ) ) ;
2022-05-04 22:01:48 +00:00
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Zusatzstoffunvertraeglichkeit ----------------------------------
* /
INSERT INTO Zusatzstoffunvertraeglichkeit ( PersonID , E_Nummer )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Kaiser ' ) ,
( SELECT E_Nummer FROM Zusatzstoff WHERE Zusatzstoffbezeichnung = ' Eisenoxide und Eisenhydroxide ' ) ) ;
INSERT INTO Zusatzstoffunvertraeglichkeit ( PersonID , E_Nummer )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Kaiser ' ) ,
( SELECT E_Nummer FROM Zusatzstoff WHERE Zusatzstoffbezeichnung = ' Gold ' ) ) ;
2022-05-11 13:17:18 +00:00
INSERT INTO Zusatzstoffunvertraeglichkeit ( PersonID , E_Nummer )
VALUES ( ( SELECT PersonID FROM Person WHERE Personenname = ' Amtmann ' ) ,
( SELECT E_Nummer FROM Zusatzstoff WHERE Zusatzstoffbezeichnung = ' Gold ' ) ) ;
/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- Clean up ----------------------------------
* /
DROP TABLE IF EXISTS tmp_import_0 ;
DROP TABLE IF EXISTS tmp_import_1 ;
DROP TABLE IF EXISTS tmp_import_2 ;
DROP TABLE IF EXISTS tmp_import_3 ;
DROP TABLE IF EXISTS tmp_import_4 ;
DROP TABLE IF EXISTS tmp_import_5 ;