SQL Structured Query Language

Slides:



Advertisements
Similar presentations
Basic SQL Introduction Presented by: Madhuri Bhogadi.
Advertisements

Virtual training week 4 structured query language (SQL)
Introduction to Structured Query Language (SQL)
SQL components In Oracle. SQL in Oracle SQL is made up of 4 components: –DDL Data Definition Language CREATE, ALTER, DROP, TRUNCATE. Creates / Alters.
Introduction to Structured Query Language (SQL)
Agenda Journalling More Embedded SQL. Journalling.
Chapter 9 SQL and RDBMS Part C. SQL Copyright 2005 Radian Publishing Co.
I Copyright © 2004, Oracle. All rights reserved. Introduction.
RDB/1 An introduction to RDBMS Objectives –To learn about the history and future direction of the SQL standard –To get an overall appreciation of a modern.
Database Technical Session By: Prof. Adarsh Patel.
I Copyright © Oracle Corporation, All rights reserved. Introduction.
Overview of Standard Query Language (SQL) Saeideh Joodaki Instructor: Dr.Yingshu Li.
An Investigation of Oracle and SQL Server with respect to Integrity, and SQL Language standards Presented by: Paul Tarwireyi Supervisor: John Ebden.
SQL SQL Server : Overview SQL : Overview Types of SQL Database : Creation Tables : Creation & Manipulation Data : Creation & Manipulation Data : Retrieving.
Tutorial 6 SQL Muhammad Sulayman
Quick review of SQL And conversion to Oracle SQL.
SQL: DDL. SQL Statements DDL - data definition language –Defining and modifying data structures (metadata): database, tables, views, etc. DML - data manipulation.
SQL Fundamentals  SQL: Structured Query Language is a simple and powerful language used to create, access, and manipulate data and structure in the database.
KKUI Manažérske informačné Systémy Cvičenia 2010 Zdenek Marhefka.
Database Fundamental & Design by A.Surasit Samaisut Copyrights : All Rights Reserved.
SQL.. AN OVERVIEW lecture3 1. Overview of SQL 2  Query: allow questions to be asked of the data and display only the information required. It can include.
1 Announcements Reading for next week: Chapter 4 Your first homework will be assigned as soon as your database accounts have been set up.  Expect an .
1 CS 430 Database Theory Winter 2005 Lecture 10: Introduction to SQL.
Relational Database Management System(RDBMS) Structured Query Language(SQL)
7 1 Database Systems: Design, Implementation, & Management, 7 th Edition, Rob & Coronel 7.6 Advanced Select Queries SQL provides useful functions that.
There’s a particular style to it… Rob Hatton
SQL Query Getting to the data ……..
PGT(CS) ,KV JHAGRAKHAND
Applied CyberInfrastructure Concepts Fall 2017
INTRANSNET Contract No. G7RT-CT
Example Bullet Point Slide
Ing. A. Takács, CSc. Výskumný ústav spojov, n. o.
VOĽNE DOSTUPNÝ REFERENČNÝ MANAŽÉR
BEZPEČNOSŤ DATABÁZ Bezpečnosť informačných systémov
Geografický informačný systém
Domény a DNS.
Vývoj a druhy počítačov
DATABÁZOVÉ JAZYKY.
Bezpečnosť databázových systémov
Produktivita vývoja nad SQL Server 2008 Miroslav Kubovčík
Databázový systém pre malý a veľký podnik
Yulia Šurinová "There is always a better way; it should be found."
Makrá v PowerPointe Joshua Lajčiak.
SQL 101.
Spring framework.
Communicating over the Network
DATABASE MANAGEMENT SYSTEM
Schémy financovania v 7RP
7. prednáška 3. november 2003.
Vlastnosti kvantitatívnych dát
Šifrovanie Dešifrovanie
Ako manažovať smartfóny z cloudu TechDays East 2014
Nástroje pre integráciu IZ a vzájomnú komunikáciu IS
Lokálne príznaky vo farebných obrazoch
22. – OTVORENÝ PRÍSTUP
PRACOVNÉ PROSTREDIE PRI PRÁCI S POČÍTAČMI Z HĽADISKA ERGONÓMIE
Servio as a Service Service desk z Telekom cloudu
Heuristické optimalizačné procesy
Ing. Anita Sáreníková/ Cvičenia z aplikovanej informatiky
4. Užívateľské prostredie UNIXu
Seminár č. 9 - osnova Metódy sieťového plánovania a riadenia:
Interaktívna kniha a e-learningový systém pre deti - Opera nehryzie
Neformálne ekonomické fórum 3. marec 2011
مقدمة في قواعد البيانات
Database systems Lecture 3 – SQL + CRUD
SQL Fundamentals in Three Hours
SQL .. An overview lecture3.
SQL-1 Week 8-9.
Index Note: A bolded number or letter refers to an entire lesson or appendix. A Adding Data Through a View ADD_MONTHS Function 03-22, 03-23,
Contents Preface I Introduction Lesson Objectives I-2
Presentation transcript:

SQL Structured Query Language otvorený (neproprietárny) jazyk, ktorého pravidlá boli vytvorené štandardizačnou komisiou Čo robí SQL? čítanie existujúcich dát, vytváranie nových záznamov udržiavajúcich dáta, zmena existujúcich dát, mazanie dát Čo nerobí SQL? SQL nie je program alebo vývojové prostredie nemá nástroje na ukladanie dát SQL je neprocedurálny, resp. deklaratívny jazyk SQL nemá vlastné špecifické vývojové prostredie SQL nie je sieťový jazyk

SQL je čiastočne alebo plne implementovaný a prístupný vo väčšine relačných SRBD založený na relačnej algebre dotaz je sekvencia operácií relačnej algebry Dr. Edgar Frank Codd – tvorca relačných databáz a SQL 1970 – relačný model 1978 – implementácia v IBM ako System/R

Štandardy ANSI (American National Standards Institute) ISO (the International Standards Organization) 1986-1987 – komerčná akceptácia SQL89 (SQL1) SQL92 (SQL2) SQL99 (SQL3) podstatná časť jazyka nebola menená v týchto modifikáciách zdrojové texty písané v SQL1 sú stále použiteľné

SQL Medzinárodný štandard ISO/IEC 9075-1 bol pripravený Joint Technical Committee ISO/IEC JTC 1 – Information Technology, Subcommittee SC 32, Data management and interchange Štandard ISO/IEC 9075 pozostáva z nasledujúcich častí, ktoré sú uvádzané pod spoločným titulom Information technology — Database languages SQL: JTC1/SC32: Data Management and Interchange WG1: Open EDI (Finland) WG2: Metadata (USA) WG3: Database Languages (Netherlands) WG4: SQL Multimedia and Application Packages (Japan) WG5: Remote Database Access (RDA) (United Kingdom) RG1: Reference Model for Data Management (Maintenance) (United Kingdom) RG2: Export /Import (Maintenance) (Canada)

SQL JTC1/SC32/WG3 Projects (SQL3 only): Part 1: Framework Part 2: Foundation Part 3: Call-Level Interface Part 4: Persistent Stored Modules Part 5: Language Bindings Part 6: XA Specialization Part 7: Temporal Part 9: Management of External Data Part 10: Object Language Bindings

SQL JTC1/SC32/WG4 Projects: Part 1: SQL/MM Framework Part 2: SQL/MM Full-Text Part 3: SQL/MM Spatial Part 4: SQL/MM General Purpose Facilities Part 5: SQL/MM Still Image Štandardu SQL/89 vyhovuje 11 schválených produktov na 52 rôznych platformách.   Štandardu SQL/92 vyhovuje viac ako 10 schválených produktov na vyše 100 rôznych platformách

Proces vývoja štandardu

SQL SQL = DDL + DML + DCL + príkazy pre prácu s transakciami   DDL – Data Definition Language – jazyk pre definovanie dát, resp. databázových objektov (CREATE DATABASE, CREATE SCHEMA, CREATE TABLE, CREATE VIEW, CREATE INDEX, ALTER, DROP, RENAME, ...) DML – Data Manipulation Language – jazyk pre manipuláciu s dátami (INSERT, UPDATE, DELETE, SELECT,...) DCL – Data Control Language – jazyk pre riadenie prístupu k dátam (GRANT, REVOKE) Príkazy pre prácu s transakciami (BEGIN, COMMIT, ROLLBACK, ...)

SQL SQL 86 3 spôsoby spracovanie príkazov DML – priame spracovanie, modulový jazyk a embedded SQL SQL 89 DDL bol oddelený ako "schema definition language" rozšírenie integritných podmienok – DEAFAULT, UNIQUE, NOT NULL, PK, FK, CHECK, views WITH CHECK OPTION SQL 92 rozšírenie dátových typov viacnásobné join operátory definovanie nových databázových objektov Dynamic SQL scrollable cursors

SQL92 SQL vlastnosti sú rozdelené do 3 resp. 4 úrovní: Entry Level SQL 89 + IC SQLSTATE pomenované výrazy v Select príkaze (AS) Transitional Level rozšírenia v oblasti dátových typov a operátorov zabezpečenie referenčnej integrity pomocou cascade delete nové typy join – NATURAL, LEFT a RIGHT OUTER JOIN príkazy pre Dynamic SQL príkazy pre vývoj schémy operátor CAST rozšírenie definície pohľadu o UNION operátor definovanie úrovní izolácie transakcií definícia viacnásobných schém

SQL92 Intermadiate Level rolovací kurzor FULL OUTER JOIN možnosť definovať doménu možnosť online DDL definovanie množinových operácií definovanie CASE výrazov použitie UNIQUE predikátu 128-znakové identifikátory komplexnejšie informácie v systémovom katalógu dátové typy date and time rozšírené o časové zóny

SQL92 Full Level odvodené tabuľky rozšírenie pravidiel pre referenčnú integritu – CASCADE UPDATE, SET NULL integrity tvrdenia (assertions) rozšírené predikáty ďalšie typy operácie JOIN – CROSS JOIN, UNION JOIN definovanie nových dátové typy – BIT(n), BIT VARYING(n) dočasné tabuľky (temporary) – ich zrušenie na konci transakcie alebo relácie (session) implementácia definovaných sekvencií ďalšie character-string operátory – UPPER, LOWER, POSITION možnosť definovať INSERT privilégium pre individuálny stĺpec možnosť operácie update cez rolovacie kurzory UPDATE and DELETE s poddotazmi (subqueries) na tej istej tabuľke

SQL99 (SQL3) ISO/IEC 9075-1: Framework (SQL/Framework) úvod do štandardu základné definície prislúchajúce štandardu definície pojmov, ktoré sú používané v štandarde notácie a konvencie používané v štandarde popis štruktúry štandardu ISO/IEC 9075-2: Foundation (SQL/Foundation) základ štandardu – dátové typy, schémy, tabuľky, pohľady, SQL príkazy, výrazy, bezpečnostný model, predikáty, pravidlá, transakčné spracovanie, atď.

SQL99 (SQL3) ISO/IEC 9075-3: Call Level Interface (SQL/CLI) špecifikuje previazanie medzi aplikačným programom, ktorý je napísaný v jednom zo štandardných programovacích jazykov a implementáciou SQL alokovanie a uvoľňovanie zdrojov inicializácia, riadenie a ukončenie SQL spojenia medzi SQL klientom a SQL serverom vykonávanie SQL príkazov, vrátane ich prípravy pre postupné vykonávanie získanie diagnostických informácií získanie informácií o SQL implementácii, napr. SQL servre, ku ktorým sa môže pripojiť SQL klient nie je potrebné žiadne predspracovanie SQL príkazov

SQL99 (SQL3) ISO/IEC 9075-4: Persistent Stored Modules (SQL/PSM) rozšírenia do SQL, aby sa stal procedurálnym (výpočtovo kompletným) príkazy na riadenie toku priraďovanie výsledkov výrazov premenným a parametrom špecifikácia správy rozhodovania, ktorá umožňuje zložené príkazy rozdeliť na základe rozličných podmienok označenie podmienok deklarácia lokálnych kurzorov ISO/IEC 9075-9: Management of External Data (SQL/MED) definuje rozšírenia do SQL pre podporu manažovania externých dát použitím cudzích tabuliek a datalink-ov prostriedky pre definovanie cudzích servrov, wrapper-ov a tabuliek

SQL99 (SQL3) ISO/IEC 9075-10: Object Language Bindings (SQL/OLB) definuje prostriedky pre vnorenie SQL príkazov do Java programov   ISO/IEC 9075-11: Information and Definition Schemas (SQL/Schemata) špecifikuje dve schémy – informačnú a definičnú informačná schéma umožňuje aplikácii získať mená perzistentných databázových objektov – tabuľky, pohľady, stĺpce, atď. Tento prístup je definovaný pomocou pojmov zo základných tabuliek definičnej schémy definičná schéma poskytuje dátový model pre podporu informačnej schémy a jej pochopenie SQL implementácia nerobí nič viac iba simuluje existenciu definičnej schémy prostredníctvom pohľadov informačnej schémy

SQL99 (SQL3) ISO/IEC 9075-13: Java Routines and Types Using the Java Programming Language (SQL/JRT) rozšírenia SQL umožňujúce volania statických metód napísaných v Java programovacom jazyku ako SQL volaných rutín a použitie tried definovaných v Java programovacom jazyku ako SQL štruktúrované typy rozšírenia do definície, manipulácie a volania SQL rutín rozšírenia do definície a manipulácie používateľom definovaných (user defined) typov nové vstavané (built-in) procedúry   ISO/IEC 9075-14: XML-Related Specifications (SQL/XML) rozšírenia SQL, ktoré umožňujú tvorbu a manipuláciu s XML dokumentmi nový predefinovaný typ XML nové vstavané (built-in) operátory pre vytváranie a manipuláciu s XML typom pravidlá pre mapovanie tabuliek, schém a katalógov do XML dokumentov

Foundation - rozšírenia rozšírenia dátových typov objektovo-relačné rozšírenia user-defined typy, Referenced typy, collection typy Large OBjects katalógy, schémy a manipulácia s nimi hierarchia tabuliek pohľady constraints triggre user-defined rutiny predikáty rekurzívne dotazy OLAP rozšírenia ORDER BY rozšírenia savepoints update through unions and joins

References Nelson M. Mattos: SQL99, SQL/MM, and SQLJ: An Overview of the SQL Standards SQL 2003 Standard, ANSI TC NCITS H2, ISO/IEC JTC 1/SC 32/WG 3