Lecture 12: SQL DDL I

Σχετικά έγγραφα
Lecture 12: SQL DDL I

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

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

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

Βάσεις Δεδομέμωμ. Δξγαζηήξην Ι. Τκήκα Πιεξνθνξηθήο ΑΠΘ

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Η/Υ A ΤΑΞΕΩΣ ΑΕ Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

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

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

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

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

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

Ενδεικτικά Θέματα Στατιστικής ΙΙ

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Εξγαζηήξην Πιεξνθνξηθήο

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

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

x x x x tan(2 x) x 2 2x x 1

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) FritzBox Fon WLAN Annex B ( )

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

Lecture 21: Functional Dependencies and Normalization

A. Αιιάδνληαο ηε θνξά ηνπ ξεύκαηνο πνπ δηαξξέεη ηνλ αγωγό.

Η αξρή ζύλδεζεο Client-Server

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή. Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε.

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

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

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

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

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

Constructors and Destructors in C++

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

Πξώην εξγαζηεξηαθό κάζεκα. Αξρηηεθηνληθή Η/Υ Ι

Lecture 3: Introduction III

Τν Πξόγξακκα ζα αλαθνηλσζεί, ακέζσο κεηά ηηο γηνξηέο ηνπ Πάζρα.

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

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

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

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

Lecture 14: SQL DML I

ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ: έζησ

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

ΤΑΞΙΝΟΜΗΣΗ ΤΩΝ ΤΔΡΗΓΟΝΙΚΩΝ ΒΛΑΒΩΝ ΚΑΤΑ ΤΑ ICDAS II ΚΡΙΤΗΡΙΑ ΜΔ ΒΑΣΗ ΤΗ ΚΛΙΝΙΚΗ ΔΞΔΤΑΣΗ

ΠΛΗ36. Άσκηση 1. Άσκηση 2. Οη δηεπζύλζεηο ησλ 4 σλ ππνδηθηύσλ είλαη νη αθόινπζεο. Υπνδίθηπν Α: /27 Υπνδίθηπν Β:

ΒΗΜΑ 2. Εηζάγεηε ηνλ Κωδηθό Πξόζβαζεο πνπ ιακβάλεηε κε SMS & δειώλεηε επηζπκεηό Όλνκα Πξόζβαζεο (Username) θαη ην ζαο

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

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

Οργάνωση και Δομή Παρουσιάσεων

Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο

γηα ηνλ Άξε Κσλζηαληηλίδε

EL Eνωμένη στην πολυμορυία EL A8-0046/319. Τροπολογία

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα.

ΚΔΦ. 2.4 ΡΗΕΔ ΠΡΑΓΜΑΣΗΚΩΝ ΑΡΗΘΜΩΝ

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

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

Μηα ζπλάξηεζε κε πεδίν νξηζκνύ ην Α, ζα ιέκε όηη παξνπζηάδεη ηοπικό μέγιζηο ζην, αλ ππάξρεη δ>0, ηέηνην ώζηε:

ΘΔΜΑ 1 ο Μονάδες 5,10,10

ΗΥ-100 Ειζαγωγή ζηην Επιζηήμη Υπολογιζηών

Έωρ και 28% η αύξηζη ηων ειζθοπών από ηο 2019!

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

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

Παλαιοσλαβική Γλώσσα. Ενότητα 11: Μορφολογία Τα Ονόματα/Αντωνυμίες. Αλεξάνδρα Ιωαννίδου. Τμήμα Σλαβικών Σπουδών

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

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

Βιομησανικόρ ζσεδιαζμόρ πποϊόνηων από ανακςκλωμένερ ζςζκεςαζίερ

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

Lecture 13: SQL DDL II

6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

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

ΣΥΣΤΗΜΑΤΑ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 1. Να ιπζνύλ ηα ζπζηήκαηα. 1 0,3x 0,1y x 3 3x 4y 2 4x 2y ( x 1) 6( y 1) (i) (ii)

Εγκατάσταση του πακέτου XAMPP. Β Τεχνική Σχολή Λεμεςοφ Σχολική χρονιά Άριςτοσ Παςιάσ

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

Η Γιώζζα SQL. Δηζαγσγή Βαζηθέο Έλλνηεο Τύπνη Γεδνκέλσλ Οξηζκόο Γεδνκέλσλ Φεηξηζκόο Γεδνκέλσλ

ΙNCOFRUIT - (HELLAS).

Σήκαηα Β Α Γ Γ Δ Λ Η Σ Ο Ι Κ Ο Ν Ο Μ Ο Υ Γ Ι Α Λ Δ Ξ Η - ( 2 ) ΕΙΣΑΓΨΓΗ ΣΤΙΣ ΤΗΛΕΠΙΚΟΙΝΨΝΙΕΣ

ΑΡΥΔ ΟΙΚΟΝΟΜΙΚΗ ΘΔΩΡΙΑ ΛΤΔΙ ΓΙΑΓΩΝΙΜΑΣΟ ΚΔΦΑΛΑΙΟΤ 2

ACTA A.E. Αριςτο Σέλεια Πιςτοποίηςη. Ανθρώπινου Δυναμικοφ. «ΠΙΣΟΠΟΙΗΗ ΑΝΘΡΩΠΙΝΟΤ ΔΤΝΑΜΙΚΟΤ Εξελίξεισ - Προοπτικέσ»

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

Transcript:

Department of Computer Science University of Cyprus EPL342 Databases Lecture 12: SQL DDL I SQL Data Definition Language (Chapter 8.1, Elmasri-Navathe 5ED) + Τ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 Τύπνη Δεδνκέλσλ ηεο 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

Τύπνη Γεδνκέλσλ ηεο SQL: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

Τύπνη Γεδνκέλσλ ηεο SQL (Αξηζκεηηθνί Τύπνη) Αθέξαηνη αξηζκνί: Γύν ηύπνη δεθαδηθώλ αθεξαίσλ αξηζκώλ κε δηαθνξεηηθό εύξνο: 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

Τύπνη Γεδνκέλσλ ηεο SQL (Σπκβνινζεηξέο) Μηα Σπκβνινζεηξά (Αιθαξηζκεηηθή Αθνινπζία) είλαη κηα ζεηξά από εκηςπώζιμοςρ (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

Τύπνη Γεδνκέλσλ ηεο SQL (Δπαδηθέο Αθνινπζίεο) Τα 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) Τύπνη Γεδνκέλσλ ηεο SQL (Ηκεξνκελία θαη Ώξα) Φξνλόζεκν (TIMESTAMP) Πέξα από απηνύο ηνπο ηύπνπο ε έλλνηα ηεο Ώξαο/Ηκεξνκελίαο ζηηο πεξηζζόηεξεο πινπνηήζεηο ππνζηεξίδεηαη θαη ππό ηελ κνξθή ζπλαξηήζεσλ όπσο ζα δνύκε ζηε ζπλέρεηα. 12-10

Τύπνη Γεδνκέλσλ ηεο SQL (Ηκεξνκελία θαη Ώξα) Τύπνο Δεδνκέλσλ 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

Τύπνη Γεδνκέλσλ ηεο SQL (Ηκεξνκελία θαη Ώξα) Τύπνο Δεδνκέλσλ 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 (Ηκεξνκελία θαη Ώξα) Εξειδικεςμένοι Τύποι SQL Server 2008 http://msdn.microsoft.com/en-us/library/ms187752.aspx 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