Lecture 12: SQL DDL I

Σχετικά έγγραφα
Διάλεξη 11: SQL Data Definition Language. Διδάσκων: Παναγιώτης Ανδρέου

Lecture 12: SQL DDL I

Βάσεις Δεδομένων (Databases)

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 12: SQL DDL. SQL Data Definition Language

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.

Συστήματα Διαχείρισης Βάσεων Δεδομένων

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

Lecture 21: Functional Dependencies and Normalization

Βάσεις Δεδομένων. Ενότητα 6: Γλώσσα Structured Query Language -SQL. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML.

SQL Τύποι Δεδομένων Δημιουργία Πίνακα Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1)

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ (ΓΡΕΒΕΝΑ)

Εισαγωγή στον Προγραμματισμό

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εργαστήριο 1

Σχεσιακό Πρότυπο Δεδομένων

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 3ο Μάθημα: Εισαγωγή στην SQL. Δρ. Κωνσταντίνος Χ.

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )

Διάλεξη 02: Βάσεις Δεδομένων Εισαγωγή. Διδάσκων: Παναγιώτης Ανδρέου

Τμήμα Πληροφορικής ΑΠΘ

IBM DB2, Microsoft SQL Server. Εαρινό Εξάμηνο

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 3) Ουρανία Σμυρνάκη

ΗΓλώσσαSQL. Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων

Εργαστήριο Βάσεων Δεδομένων

Βάςεισ Δεδομζνων Ι. Ενότητα 7: Ειςαγωγή ςτην γλώςςα_sql. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ

Lecture 14: SQL DML I

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Διάλεξη 16: SQL DML IV, SQL DCL, SQL TCL. Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές (ΗΥ)

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

Ανάπτυξη και Σχεδίαση Λογισμικού

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

1 / 97

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

1 / 87

Τύποι δεδομένων, τελεστές, μεταβλητές

Αντικειμενοστρεφής Προγραμματισμός

Σχεδιασμός Βάσεων Δεδομένων

Σχεσιακό Μοντέλο Δεδομένων

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 2ο Αναπαράσταση Δεδομένων

Προγραμματισμός Ι (ΗΥ120)

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Διάλεξη 12: SQL Data Definition Language. Διδάσκων: Παναγιώτης Ανδρέου

2.1. Εντολές Σχόλια Τύποι Δεδομένων

Lecture 3: Introduction III

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL

Στοιχειώδης προγραμματισμός σε C++

Βάσεις Δεδομένων. Εισαγωγή για το Εργαστήριο. Δρ. Τιάκας Ελευθέριος. Τμήμα Πληροφορικής ΑΠΘ

Σχεδίαση και Χρήση Βάσεων Δεδομένων. Χρήση του DBDesigner. Γιώργος Πυρουνάκης - forky@di.uoa.gr

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

2. Ορισμός σχήματος ΒΔ με SQL

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #2

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Έννοιες Διαχείρισης Βάσεων Δεδομένων και Αρχιτεκτονική

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

Διάλεξη 08: Αντιστοίχηση Εννοιολογικού σε Σχεσιακό Μοντέλο (ER/EER to Relational) Διδάσκων: Παναγιώτης Ανδρέου

Πράξεις με δυαδικούς αριθμούς

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Lecture 24: Functional Dependencies and Normalization IV

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Εισαγωγή στις Βάσεις Δεδομζνων II

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Η Γλώσσα SQL. Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων

Προγραμματισμός Η/Υ (ΤΛ2007 )

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

Προγραμματισμός Η/Υ (ΤΛ2007 )

Εισαγωγή Mια από τις βασικές λειτουργίες ενός σχεσιακού συστήµατος διαχείρισης βάσεων δεδοµένων είναι η διαχείριση του πληροφοριακού περιεχοµένου που

Ζαχαρίας Μ. Κοντοπόδης Microsoft Jet S.Q.L. Διαφάνεια 1η

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

Βασικά Στοιχεία της Java

1 ΕΙΣΑΓΩΓΗ. Πρωταρχικοί Τύποι

Βάσεις Δεδομένων (Databases)

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )

Βάσεις Δεδομένων Ι 6. Ιδιότητες πεδίων. Τμήμα Διοίκησης Επιχειρήσεων (Μεσολόγγι) ΤΕΙ Δυτικής Ελλάδας

Mεταβλητές (variables) και Σταθερές (constants)

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Transcript:

Department of Computer Science University of Cyprus EPL342 Databases Lecture 12: SQL DDL I SQL Data Definition Language (Chapter 6.1, Elmasri-Navathe 7ED) + ΤransactSQL Reference Guide http://msdn.microsoft.com/en-us/library/bb510741.aspx Demetris Zeinalipour http://www.cs.ucy.ac.cy/courses/epl342 12-1

Περιεχόμενο Διάλεξης Ολοκλήρωση Διάλεξης 11 (Μετατροπή ΕΕR) Εισαγωγή στην SQL 1999 Αριθμοί, Συμβολοσειρές, Δυαδικές Ακολουθίες, Λογικοί Τύποι, Ημερομηνίες & Ώρα, Χρονόσημα, κ.α. TSQL: Συναρτήσεις Ημερομηνίας, Αυτόματη Αύξηση Τιμής, Υπολογιζόμενα Γνωρίσματα, Εξειδικευμένοι Τύποι Ορισμός Δεδομένων (CREATE/DROP/ALTER) Δημιουργία Σχήματος και Πινάκων Περιορισμοί (CONSTRAINTS) Οντότητας, Αναφορικής Ακεραιότητας, Ονομασία, Εντολές Ενεργοποίησης Αναφοράς, Προσωρινή Απενεργοποίηση Περιορισμών 12-2

Εισαγωγή στη SQL Στις προηγούμενες ενότητες μελετήσαμε μια τυπική γλώσσα ΒΔ, την Σχεσιακή Άλγεβρα, η οποία στηρίζεται πάνω στο Σχεσιακό Μοντέλο. Σε αυτή την ενότητα θα μελετήσουμε μια πραγματική γλώσσα βάσεων δεδομένων την SQL (Structured Query Language) η οποία στηρίζεται τόσο πάνω στη Σχεσιακή Άλγεβρα όσο και πάνω στον Λογισμό Πλειάδων. Συγκεκριμένα θα μελετήσουμε την SQL σε δυο βασικές ενότητες: Γλώσσα Ορισμού Δεδομένων (Data Definition Language, SQL-DDL) Γλώσσα Επεξεργασίας Δεδομένων (Data Manipulation Language, SQL-DML) 12-3

Εισαγωγή στην SQL (Παραδείγματα DDL/DML) Παράδειγμα Γλώσσας Ορισμού Δεδομένων (Data Definition Language, SQL-DDL) CREATE TABLE DEPARTMENT ( DNAME VARCHAR(10) NOT NULL, DNUMBER INTEGER NOT NULL, MGRSSN CHAR(9), MGRSTARTDATE CHAR(9) ); Παράδειγμα Γλώσσας Επεξεργασίας Δεδομένων (Data Manipulation Language, DML) SELECT D.MGRSSN, D.MGRSTARTDATE, FROM DEPARTMENT AS D WHERE DNUMBER = 10; 12-4

Ιστορία της SQL 1969: Το Σχεσιακό Μοντέλο του Edgar F. Codd υλοποιείται από τη βάση IBM System R 1970: Ο Donald D. Chamberlin και ο Raymond F. Boyce, επιστήμονες της IBM Almaden, δημιουργούν την πρώτη έκδοση της SQL η όποια ονομάζεται SEQUEL. Το όνομα αλλάζει αργότερα σε SQL εφόσον το όνομα SEQUEL ήταν κατοχυρωμένο σε κάποια εταιρεία κατασκευής αεροπλάνων στην Αγγλία. Την ίδια χρονιά η Relational Software, Inc., επηρεασμένο από τους Codd, Chamberlin, and Boyce, φτιάχνει την βάση δεδομένων Oracle για κρατικές υπηρεσίες των ΗΠΑ. 1985: H ΙΒΜ κάνει την SQL Πατέντα (US Pat. 4,506,326). Οι πιο επιτυχημένες προσπάθειες τυποποίησης SQL (ANSI 1986) SQL1 (ANSI 1989) SQL2 ή SQL92 (ANSI 1992) SQL3 ή SQL99 (ANSI 1999) (+OLAP, XML, object-relational etc.) Πρότυπα που έμειναν κυρίως στις συστάσεις: SQL 2003 και SQL 2008 12-5

:1999 Σε αυτή την ενότητα θα μελετήσουμε τους βασικούς τύπους δεδομένων της ANSI SQL:1999. Στα πλαίσια του εργαστηρίου έχετε μελετήσει ήδη αρκετούς εξειδικευμένους τύπους δεδομένων που ορίζονται στα πλαίσια της TSQL-DDL (π.χ., money, image=varbinary(max), text, κτλ.) TSQL 2008 Reference: http://technet.microsoft.com/en-us/library/bb510741.aspx O SQL Server έχει περισσότερους από 32 τύπους δεδομένων! ANSI SQL:1999 Τύποι Αριθμητικοί Τύποι: Numeric, Decimal, INT, FLOAT, REAL, κτλ. Αλφαριθμητικοί (Συμβολοσειρές) Τύποι: CHAR, VARCHAR, CLOB, NCHAR, NVARCHAR, NCLOB, κτλ. Δυαδικές Ακολουθίες: BIT, BLOB. Λογικοί Τύποι: BOOLEAN. Ημερομηνίες & Ώρα και Χρονόσημα: DATE, TIME, TIMESTAMP. Δημιουργία Εξειδικευμένων Τύπων: CREATE DOMAIN. 12-6

(Αριθμητικοί Τύποι) Ακέραιοι αριθμοί: Δύο τύποι δεκαδικών ακεραίων αριθμών με διαφορετικό εύρος: INTEGER (ή INT), SMALLINT και ΤΙΝΥΙΝΤ Το εύρος των αριθμητικών τύπων εξαρτάται από την υλοποίηση εάν και συνήθως είναι 32 bits, 16 bits και 8 bits αντίστοιχα. Ο SQLServer υποστηρίζει το BIGINT το οποίο είναι 64 bits. Πραγματικοί Αριθμοί (Real Numbers): 3 τύποι κινητής υποδιαστολής: FLOAT[(precision)], REAL (è Float(24)), και DOUBLE PRECISION (è Float(53)) Οι χρήστες μπορούν να καθορίσουν την ακρίβεια του FLOAT όχι όμως αυτή του REAL ή DOUBLE PRECISION Αναπαράσταση δεκαδική ή επιστημονική (π.χ., 0.1 ή 1.0E-1) Δεκαδικοί Αριθμοί 3 τύποι δεκαδικής μορφής (όλοι υποδηλώνουν το ίδιο τύπο στη πράξη): DECIMAL(i,j), DEC(i,j) ή NUMERIC(i,j) (π.χ., i=3,j=2 è 111.20) i = ακρίβεια (# όλων των ψηφίων εκτός της υποδιαστολής i=18 default) j = κλίμακα (# των δεκαδικών ψηφίων. j=0 το default) Στον SQL EPL342: Server Databases δεν -υπάρχει Demetris Zeinalipour η έννοια (University των unsigned of Cyprus) αριθμών. 12-7

(Συμβολοσειρές) Μια Συμβολοσειρά (Αλφαριθμητική Ακολουθία) είναι μια σειρά από εκτυπώσιμους (printable) χαρακτήρες οι οποίοι δηλώνονται με μονά εισαγωγικά: Hello SQL προαιρετικό Τύποι Συμβολοσειρών: Σταθερού μήκους n: CHAR[(n)] ή CHARACTER[(n)] Η προκαθορισμένη τιμή του n είναι 1, αντιπροσωπεύοντας ένα μονό χαρακτήρα, δηλ., CHAR ή CHARACTER αντιπροσωπεύει ένα χαρακτήρα Οι χαρακτήρες που δεν αξιοποιούνται μένουν κενοί (space padding) ενώ οι κενοί χαρακτήρες δεν λαμβάνουν μέρος σε συγκρίσεις (δεν ισχύει για εξ. εφαρμογές) Μεταβλητού μήκους, μέγιστου μεγέθους n: VARCHAR[(n)] ή CHAR VARYING[(n)] Μεγάλου Μήκους (Character Large OBject CLOB): TEXT (deprecated θα αφαιρεθεί από μελλοντική έκδοση της MSSQL) Προσδιορίζει μεγάλες ακολουθίες (π.χ., κείμενα ή μεγάλες περιγραφές) μέχρι 2 ή 4 GB (τα αντικείμενα αυτά αποθηκεύονται συνήθως εκτός βάσης δεδομένων) Πάνω σε αυτά τα πεδία δεν είναι συνήθως δυνατό να γίνουν συγκρίσεις. Στον SQL Server να ορίζεται ως VARCHAR(MAX) => δεν είναι deprecated Χαρακτήρες UNICODE για αναπαράσταση Ξένων Γλωσσών: NATIONAL CHARACTER[(n] ή ΝCHAR(N) NATIONAL VARYING CHARACTER[(n)] ή NVARCHAR(N) NATIONAL LARGE CHARACTER OBJECT[(n)] ή NCLOB(N) 12-8

(Δυαδικές Ακολουθίες) Τα Bit strings είναι σειρές από δυαδικά ψηφία (0 ή 1) ή NULL. (TRUE=1, FALSE=0 ή NULL) Τύποι Bit Strings Σταθερού μήκους n: BIT[(n)] Μεταβλητού μήκους, μέγιστου μεγέθους n: VARBIT[(n)] ή BIT VARYING[(n)] Μεγάλου Μήκους (Binary Large OBject BLOB): Αντίστοιχα με το CLOB αλλά χωρίς ρητή κωδικοποίηση Η προκαθορισμένη τιμή του n είναι 1. O SQL server αποθηκεύει τα bits σε byte (π.χ., 3bit = 1Byte, 9b=2B, ) Μειονεκτήματα Κάποιες υλοποιήσεις (π.χ., Oracle) δεν υποστηρίζουν bit-strings οπόταν συνίσταται η χρήση Char(1)=Y N Δεν επιτρέπεται η χρήση ευρετηρίων πάνω από bit strings π.χ., EPL342: ευρετήριο Databases κατακερματισμού - Demetris Zeinalipour που να βρίσκει (University γρήγορα of Cyprus) τους EMPLOYEE 12-9

(Ημερομηνία και Ώρα) Οι τύποι δεδομένων Ημερομηνίας και Ώρας προστεθήκαν στην SQL2 Τρεις τύποι χρονολογικών δεδομένων Ημερομηνία (DATE) Ώρα (TIME) Χρονόσημο (TIMESTAMP) Πέρα από αυτούς τους τύπους η έννοια της Ώρας/Ημερομηνίας στις περισσότερες υλοποιήσεις υποστηρίζεται και υπό την μορφή συναρτήσεων όπως θα δούμε στη συνέχεια. 12-10

(Ημερομηνία και Ώρα) Τύπος Δεδομένων DATE Εξ ορισμού μορφή (Default format): YYYY-MM-DD Εύρος: 0001-01-01 έως 9999-12-31 Ακρίβεια: Ημέρας Ημερολόγιο: Γρηγοριανό DEFAULT τιμή: 1900-01-01 Μέγεθος: 3 bytes στον SQL Server) 3 bytes (16Μ days = 45K years) Εάν ήταν 2bytes (65K days = 180 years) Παράδειγμα CREATE TABLE DEPARTMENT (... MGRSTARTDATE DATE NOT NULL DEFAULT 1900-01-01 ); 12-11

(Ημερομηνία και Ώρα) Τύπος Δεδομένων TIME [(precision)] Εξ ορισμού μορφή: hh:mm:ss[.nnnnnnn] Εύρος: 00:00:00.0000000 εως 23:59:59.9999999 Ακρίβεια: 100 nanoseconds (almost microsec.) DEFAULT τιμή: 00:00:00 Μέγεθος: 5 bytes (στον SQL Server) Τύπος Δεδομένων TIMESTAMP[(precision)] Συνδυάζει την ώρα μαζί μαζί την ημερομηνία Στον SQL Server 2008 ονομάζεται datetime2 (YYYY- MM-DD hh:mm:ss[.nnnnnnn]) Υπάρχουν και τα datetime (YYYY-MM-DD hh:mm:ss[.nnn] - millisecond) και smalldatetime (YYYY-MM-DD hh:mm:ss - second) 12-12

(Ημερομηνία και Ώρα) Εξειδικευμένοι Τύποι SQL Server https://docs.microsoft.com/en-us/sql/t-sql/data-types/datatypes-transact-sql?view=sql-server-2017 Data type Format Range Accuracy Storage size (bytes) time hh:mm:ss[.nnnnn nn] 00:00:00.0000000 through 23:59:59.9999999 100 nanoseconds 3 to 5 date YYYY-MM-DD smalldatetime YYYY-MM-DD hh:mm:ss datetime YYYY-MM-DD hh:mm:ss[.nnn] 0001-01-01 through 9999-12-31 1900-01-01 through 2079-06-06 1753-01-01 through 9999-12-31 1 day 3 1 minute 4 0.00333 second 8 datetime2 YYYY-MM-DD hh:mm:ss[.nnnnn nn] 0001-01-01 00:00:00.0000000 through 9999-12-31 23:59:59.9999999 100 nanoseconds 6 to 8 0001-01-01 00:00:00.0000000 through 9999-12-31 YYYY-MM-DD datetimeoffset hh:mm:ss[.nnnnn 100 nanoseconds 8 to 10 nn] [+ -]hh:mm 23:59:59.9999999 (in EPL342: Databases - Demetris UTC) Zeinalipour (University of Cyprus) 12-13