Κατασκευή Βάσης

ΔΟΜΕΣ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ
Άσκηση 1
Φτιάχνετε την βάση timologisi.
Φτιάχνετε τους πίνακες pelates paragelies products με όρους της mysql και
εκτελείτε εντολές CREATE, USE, SHOW, DESCRIBE, DROP, ALTER, ADD,
CHANGE.
Κατασκευή της ΒΔ timologisi.
Βάση timologisi
Εκτέλεση ερωτήματος κατασκευής και χρήσης της ΒΔ.
CREATE DATABASE timologisi;
USE timologisi;
Κατασκευή πινάκων της ΒΔ timologisi.
Πίνακας pelates
Εκτέλεση ερωτήματος
CREATE TABLE pelates (
pel_id SMALLINT(3) UNSIGNED NOT NULL AUTO_INCREMENT,
pel_name VARCHAR(40) NOT NULL,
pel_street VARCHAR(80) NOT NULL,
pel_city VARCHAR(30) NOT NULL,
pel_zip MEDIUMINT(5) UNSIGNED ZEROFILL NOT NULL,
pel_phone VARCHAR(14),
contact_name VARCHAR(40),
contact_email VARCHAR(60),
PRIMARY KEY (pel_id),
INDEX (pel_name)
);
Πίνακας paragelies
Εκτέλεση ερωτήματος
CREATE TABLE paragelies (
par_id SMALLINT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
pel_id SMALLINT(3) UNSIGNED NOT NULL,
par_date TIMESTAMP NOT NULL,
par_amount DECIMAL(10,2) UNSIGNED NOT NULL,
par_description TINYTEXT NOT NULL,
date_par_paid DATE,
PRIMARY KEY (par_id),
1
ΔΟΜΕΣ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ
INDEX
INDEX
INDEX
INDEX
);
(pel_id),
(par_date),
(par_amount),
(date_par_paid)
Πίνακας products
Εκτέλεση ερωτήματος
CREATE TABLE products (
prod_id SMALLINT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
prod_name VARCHAR(30) NOT NULL,
prod_descr VARCHAR(50) NOT NULL,
purchase VARCHAR(20) NOT NULL,
purchase_date DATE NOT NULL,
PRIMARY KEY (prod_id),
INDEX (prod_name),
INDEX (purchase)
);
Ενημέρωση πίνακα προσθήκη στηλών
Εδώ προσθέτουμε στον πίνακα paragelies το πρωτεύον κλειδί του πίνακα products
που είναι το prod_id
και το βάζουμε επίσης στον ίδιο πίνακα ευρετήριο σαν
ευρετήριο INDEX(prod_id).
Δηλαδή ο πίνακας paragelies γίνεται
mysql>CREATE TABLE paragelies (
->par_id SMALLINT(4) UNSIGNED NOT NULL AUTO_INCREMENT,
->pel_id SMALLINT(3) UNSIGNED NOT NULL,
->prod_id SMALLINT(4) UNSIGNED NOT NULL,
->par_date TIMESTAMP NOT NULL,
->par_amount DECIMAL(10,2) UNSIGNED NOT NULL,
->par_description TINYTEXT NOT NULL,
->date_par_paid DATE,
->PRIMARY KEY (par_id),
->INDEX (pel_id),
->INDEX (prod_id),
->INDEX (par_date),
->INDEX (par_amount),
->INDEX (date_par_paid)
->);
2