Autókölcsönzős feldat

Az alábbi feladatban egy új relációs adatbázist kell létrehoznia.

Megoldásként a létrehozáshoz használt SQL scriptet kell beadnia.

Feladatok:

        Hozzon létre egy megoldas.sql nevű szöveges állományt!

        Hozzon létre egy új adatbázist autoberles néven, a létrehozó SQL utasítást másolja be a megoldas.sql fájlba!

        Hozza létre az alábbi táblákat, ügyeljen arra, hogy a táblák közötti kapcsolatok, idegen kulcsok is definiálásra kerüljenek! A létrehozó SQL utasításokat másolja be a megoldas.sql fájlba!

berlok (id, nev, jogositvanyszama, telefonszam, szuletesiido, lakcim)  

id    Bérlő azonosítója, egész (auto incerment), ez az elsődleges kulcs.  

nev  Bérlő neve, max 100 karakter, kötelező.

jogositvany  A bérlő jogosítványának száma, szöveges, maximum 15 karakter, kötelező. 

telefonszam  Bérlő telefonszáma, szöveges, maximum 20 karakter, nem kötelező .


autok (id, rendszam, tipus, evjarat, szin)

id                Az autó azonosítója, egész (auto incerment), ez az elsődleges kulcs. 

rendszam    Az autó rendszáma, szöveges, max 6 karakter, kötelező, legyen egyedi. 

tipus           Az autó márkája, típusa, szöveges, max. 100 karakter, kötelező.

evjarat       Az autó gyártásának éve, egész típusú, nem kötelező. szin Az autó színe, szöveges, maximum 30 karakter, nem kötelező. 

kolcsonzes (id, berloid, autoid, berletkezdete, napokszama, napidij)

id                    A kölcsönzés azonosítója, egész (auto incerment), ez az elsődleges kulcs.

berloid            A bérlő azonosítója a Bérlő táblából. (idegen kulcs)

autoid             Autó azonosítója az Autók táblából. (idegen kulcs)

berletkezdete   A bérlő mikor bérelte ki az autót, dátum típusú, kötelező.

napokszama    A bérlet végén kerül kitöltésre, azt mutatja, hogy hány napig volt az autó a bérlőnél. Egész típusú, nem kötelező.  Az üres érték azt mutatja, hogy az autó még a bérlőnél van.  

napidij             A napi bérleti díj összege, numerikus típusú, kötelező.  


Az autókölcsönzőnek jelenleg 4 autója van. Hozza létre a négy rekordot az autok táblában!

A rekordok beszúrását végző SQL utasítás(oka)t másolja be a megoldas.sql állományba!


Rendszám

Típus

Évjárat

Szín

ABC456

Ford Ka

2003

Pink

ABC123

Volkswagen Golf

2011

Fehér

ABC157

Ford Mondeo

2015

Fekete

ABC448

Volkswagen Golf

2012

Kék

 

Szúrja be a berlok táblába az alábbi két ügyfelet, a művelethez szükséges SQL

utasítás(oka)t másolja be a megoldas.sql állományba!


Név

Jogosítvány száma

Telefonszám

Kandúr Károly

LR337157

06-41-334112

Gipsz Jakab

VE445112

06-41-555223

 

Rögzítse a kolcsonzes táblába az alábbi eseményeket, a művelethez szükséges

SQL utasítás(oka)t másolja be a megoldas.sql állományba!

o    Kandúr Károly kikölcsönözte 2017. 04. 23-án az ABC157 rendszámú Ford Mondeót. A napi díj: 12 500 Ft.

o    Gipsz Jakab 2017. 04. 25-én bérbe vette az ABC123 rendszámú Golfot, a napi díja: 9999 Ft. o Kandúr Károly visszahozta a nála lévő autót 2017. 04. 28-án, így összesen 6 napot volt nála.

 

Készítse el az alábbi lekérdezéseket, a művelethez szükséges SQL utasítás(oka)t

másolja be a megoldas.sql állományba!

Készítsen lekérdezést, amely megjeleníti, hogy Kandúr Károlynak mekkora bérleti díjat kellett fizetnie!

Készítsen lekérdezést, amely megjeleníti az éppen kölcsönzés alatt lévő autó rendszámát és a bérlő nevét!

MEGOLDÁSOK:

1 feladat

CREATE database autoberles default CHARACTER set utf8 COLLATE utf8_hungarian_ci;

2 feladat
CREATE TABLE berlok( id int(11) AUTO_INCREMENT PRIMARY KEY, nev varchar(100) not null, jogositvagy varchar(15) not null, telefonszam varchar(20) not null );

3 feladat
CREATE table autok( id int(11) AUTO_INCREMENT PRIMARY KEY, rendszam varchar(6) not null UNIQUE key, tipus varchar(100) not null, evjarat int(11), szin varchar(30) );

4 feladat
CREATE TABLE kolcsonzes( id int(11) AUTO_INCREMENT PRIMARY KEY, berloid int(11), autoid int(11), berletkezdete date not null, napokszama int(11), napidij int(11) );

5 feladat
INSERT INTO `autok`(`rendszam`, `tipus`, `evjarat`, `szin`) VALUES ('ABC456','Ford Ka','2002','Pink');
INSERT INTO `autok`(`rendszam`, `tipus`, `evjarat`, `szin`) VALUES ('ABC123','Volkswagen Golf','2011','Fehér');
INSERT INTO `autok`(`rendszam`, `tipus`, `evjarat`, `szin`) VALUES ('ABC157','Ford Mondeo','2015','Fekete');
INSERT INTO `autok`(`rendszam`, `tipus`, `evjarat`, `szin`) VALUES ('ABC448','Volkswagen Golf','2012','Kék');

6 feladat
INSERT INTO `berlok`( `nev`, `jogositvagy`, `telefonszam`) VALUES ('Kandúr Károly','LR337157','06-41-334112');
INSERT INTO `berlok`( `nev`, `jogositvagy`, `telefonszam`) VALUES ('Gipsz Jakab','VE445112','06-41-555223');

7 feladat
INSERT INTO `kolcsonzes`( `berloid`, `autoid`, `berletkezdete`, `napidij`) VALUES ((SELECT berlok.id FROM berlok WHERE berlok.nev = 'Kandúr Károly'), (SELECT autok.id FROM autok WHERE autok.rendszam = 'ABC157'),'2017-04-25',12500);

8 feladat
INSERT INTO `kolcsonzes`( `berloid`, `autoid`, `berletkezdete`, `napidij`) VALUES ((SELECT berlok.id FROM berlok WHERE berlok.nev = 'Gipsz Jakab'),(SELECT autok.id FROM autok WHERE autok.rendszam = 'ABC123'),'2017-05-25',9999);

9 feladat
UPDATE `kolcsonzes` SET `napokszama`= 6 WHERE id = (SELECT id FROM berlok WHERE berlok.nev = 'Kandúr Károly');

10 feladat
SELECT berlok.nev, napokszama*napidij as bérletidíj FROM `kolcsonzes` INNER JOIN berlok ON kolcsonzes.berloid = berlok.id WHERE kolcsonzes.id= (SELECT id FROM berlok WHERE berlok.nev = 'Kandúr Károly');

11 feladat
SELECT berlok.nev, autok.rendszam FROM ((`kolcsonzes` INNER JOIN berlok on kolcsonzes.berloid = berlok.id)inner join autok on kolcsonzes.autoid = autok.id) WHERE napokszama = 0;

Megjegyzések

Népszerű bejegyzések ezen a blogon

Ágazati alapvizsga (Programozás)

Ágazati alap vizsga (WEB)

HTML + CSS (elmélet+gyakrolat)