Wykład 2. SQL 1 Structured Query Lenguage



Podobne dokumenty
Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Bazy danych 7. SQL podstawy

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

Język SQL, zajęcia nr 1

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

Ref. 7 - Język SQL - polecenia DDL i DML

Wykład 4. SQL praca z tabelami 1

Bazy danych 5. Samozłaczenie SQL podstawy

SQL - DDL. 1 Tabele systemowe. 2 Typy danych

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Projektowanie systemów baz danych

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

Wykład 05 Bazy danych

Bazy danych 4. SQL podstawy. P. F. Góra

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

Bazy danych 2. Wykład 5 Structured Query Language (SQL) c.d. DDL

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.

Laboratorium nr 1. Temat: Wprowadzenie do MySQL-a

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

Paweł Rajba

Bazy danych 4. SQL- podstawy

Bazy danych. Dr inż. Paweł Kasprowski

SQL 4 Structured Query Lenguage

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Autor: Joanna Karwowska

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Instrukcja CREATE TABLE

SQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

Bazy danych. Polecenia SQL

Bazy danych - Materiały do laboratoriów VIII

CREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować:

Systemy GIS Tworzenie zapytań w bazach danych

BAZY DANYCH wprowadzenie do języka SQL. Opracował: dr inż. Piotr Suchomski

Bazy danych 6. Klucze obce. P. F. Góra

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Wykład 8. SQL praca z tabelami 5

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I

Język SQL, zajęcia nr 2

Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski.

Język baz danych SQL cz.1

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

1. Sprawdzenie ustawień konfiguracyjnych. Uruchomienie wiersza poleceń:..\ścieżka\bin>mysqladmin variables

1 Projekt fizyczny 1. 3 Perspektywy słownika danych Źródła 12

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Wykład 5. SQL praca z tabelami 2

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Bazy danych Ćwiczenia projektowe

Relacyjne bazy danych. Podstawy SQL

040 STRUCTURED QUERY LANGUAGE. Prof. dr hab. Marek Wisła

Bazy Danych. SQL Podstawy języka. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

2 Przygotował: mgr inż. Maciej Lasota

Bazy danych 10. SQL Widoki

SIECI KOMPUTEROWE I BAZY DANYCH

Wykład :45 BD-1 W_3

Używany kiedy pełna treść instrukcji SQL jest nieznana przed uruchomieniem programu.

Dr Michał Tanaś(

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik

SQL w praktyce. Miłej i owocnej nauki!!!

kończy wysyłanie danych do pliku tworzy strukturę tabeli wyświetla opis struktury tabeli zmiana nazwy tabeli usuwanie tabeli

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu:

ACESS- zadania z wykorzystaniem poleceń SQL

SQL język zapytań (query language) cz.1

Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa. Studia Podyplomowe dla Nauczycieli

Relacyjne bazy danych. Podstawy SQL

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

SIECI KOMPUTEROWE I BAZY DANYCH

E.14 Bazy Danych cz. 16 SQL Tworzenie, modyfikowanie i usuwanie tabel

Widok Connections po utworzeniu połączenia. Obszar roboczy

Wprowadzenie do projektowania i wykorzystania baz danych Relacje

Aspekty aktywne baz danych

Bazy danych Język SQL część 1 Wykład dla studentów matem

Podstawowe informacje o bazach danych. Technologie Informacyjne

STANDARDY JĘZYKA SQL CECHY JĘZYKA SQL WADY I ZALETY

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

Typy Oracle atrybutów relacji Typ NUMBER (1)

Tworzenie baz danych i tabel

Typy Oracle atrybutów relacji Typ NUMBER (1)

PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

Bazy danych 9. SQL Klucze obce Transakcje

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Bazy Danych. SQL Podstawy języka. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

Bazy danych Ćwiczenia projektowe

Administracja i programowanie pod Microsoft SQL Server 2000

Instalacja MySQL.

MS SQL Język definiowania danych (DDL): ćwiczenia

Internetowe bazy danych

Obiekty dowolnego typu, w tym bazy danych, możemy tworzyć instrukcją CREATE. Po czasowniku CREATE należy podać typ tworzonego obiektu i jego nazwę.

BAZA DANYCH SIECI HOTELI

BAZY DANYCH JĘZYK ZAPYTAŃ BAZ DANYCH SQL. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

Administracja i programowanie pod Microsoft SQL Server 2000

Bazy danych Ćwiczenia projektowe

Transkrypt:

Wykład 2 SQL 1 Structured Query Lenguage

SQL (Structured Query Language) Język zapytań do bazy danych. IBM lata osiemdziesiąte. Stosowany w systemach zarządzania bazami danych (DBMS); Oracle, Paradox,Access, MySQL itd. Pierwsza implementacja Oracle 1979 SQL jest podjęzykiem danych. Sposoby używania SQL-a Interaktywny lub samodzielny SQL. Wprowadzany przez użytkownika w drodze interakcji z programem. Statyczny SQL. Zaszyty w kodzie programu wynikowego. Dwie wersje (zanurzony, modułowy). Dynamiczny SQL. Kod SQL-a generowany przez aplikację w czasie jej wykonywania

Cechy języka SQL: 1.SQL jest językiem nieproceduralnym. Nie ma instrukcji sterujących procesem wykonywania programu. Decyzje o sposobie wykonania programu pozostawia DBMS. 2. Trójwartościowa logika (3VL). Oprócz prawdy [TRUE] i fałszu [FALSE] wprowadza trzecią wartość logiczną [NULL]. Opisuje ona fakty nieznane. 3. Instrukcje SQL są grupowane wg. funkcji

Główne grupy instrukcji SQL-a Język definicji danych (DDL, tworzenie różnych obiektów) CREATE SCHEMA, CREATE TABLE, CREATE VIEW CREATE ASSERTION, CREATE DOMAIN, CREATE INDEX. Język manipulowania danymi(dml) SELECT, INSERT, UPDATE, DELETE. Instrukcje sterowania danymi. GRANT, REVOKE.

Tworzenie bazy danych Schematem nazywamy zbiór obiektów bazy danych znajdujących się pod kontrolą jednego użytkownika. CREATE SCHEMA DATABASE Składnia CREATE SCHEMA DATABASE [IF NOT EXISTS] klauzula nazwy schematu [ DEFAULT CHARACTER SET zbiór znakowy ] [ { CREATE DOMAIN instrukcja CREATE TABLE instrukcja CREATE VIEW instrukcja GRANT instrukcja CREATE ASSERTION instrukcja CREATE CHARACTER SET instrukcja CREATE COLLATION instrukcja CREATE TRANSLATION instrukcja [ zbiór znakowy] } ]...;

klauzula nazwy schematu ::= nazwa schematu AUTHORIZATION identyfikator uprawnień nawa schematu AUTHORIZATION identyfikator uprawnień Przykład CREATE SCHEMA DATABASE Schemat_Janka AUTHORIZATION Janek DEFAULT CHARACTER SET ASCII CREATE DOMAIN id_num AS integer CHECK (VALUE > 0) CREATE GLOBAL TEMPORARY TABLES Nieregularna ( nr_elem id_num PRIMARY KEY, nazwa_elem CHAR NOT NULL, cena_pocz DEC, cena_max DEC, cena_min DEC, cena_sred DEC, ON COMMIT PRESERVE ROWS ) GRANT SELECT ON Nieregularna TO Tomek

CREATE DATABASE pojazd; W tym przypadku zostaną użyte wartości domyślne ustawione w procesie instalacji DBMS-a. SET SCHEMA ALTER DATABASE nazwa schematu Instrukacja ta pozwala na dokonywanie zmian w ustawionym schemacie. ALTER {DATABASE SCHEMA} [nazwa_bazy] [DEFAULT] CHARACTER SET [=] nazwa zbioru znaków [DEFAULT] COLLATE [=] nazwa porównań [pozostale zmiany]

DROP SCHEMA DATABASE Kasuje całą bazę danych wraz ze wszystkimi tabelami. DROP {DATABASE SCHEMA} [IF EXISTS] nazwa bazy [IF EXISTS] wykonuje polecenie gdy istnieje podana nazwa

CREATE [ {GLOBAL LOCAL} TEMPORARY] TABLE [IF NOT EXISTS] nazwa tabeli (Definicja tabeli) [Opcje tabeli] Definicja tabeli Typ danych [NOT NULL NULL] [DEFAULT domyślna] [AUTO_INCREMENT] [UNIQUE [KEY] [PRIMARY] KEY] [COMMENT ciąg znaków'] [definicja referencji] [NOT NULL] wartość pola nie może być pusta [NULL] pusta wartość pola [DEFAULT] domyślna wartość pola [AUTO_INCREMENT] automatyczna numeracja [UNIQUE KEY] klucz unikalny [PRIMARY KEY] klucz główny [COMMENT] komentarz

definicja referencji: REFERENCES nazwa_tabeli (indeks_kolumny,...) [MATCH FULL MATCH PARTIAL MATCH SIMPLE] [ON DELETE opcje referencji] [ON UPDATE opcje referencji] Indeks kolumny: nazwa_kolumny [(długość)] [ASC DESC] Opcje referencji RESTRICT CASCADE SET NULL NO ACTION Użycie RESTRICT oznacza, że z usuwanej tablicy nie mogą korzystać w danej chwili perspektywy lub ograniczenia. CASCADE powoduje usunięcie razem z tablicą wszystkich obiektów ktore z niej korzystają

Typ danych: BIT[(length)] // typ zero-jedynkowy Typy całkowite TINYINT[(długość)] [UNSIGNED] [ZEROFILL] SMALLINT[(długość)] [UNSIGNED] [ZEROFILL] MEDIUMINT[(długość)] [UNSIGNED] [ZEROFILL] INT[(długość)] [UNSIGNED] [ZEROFILL] INTEGER[(długość)] [UNSIGNED] [ZEROFILL] BIGINT[(długość)] [UNSIGNED] [ZEROFILL] Typy zmiennoprzecinkowe REAL[(długość, ilość miejsc)] [UNSIGNED] [ZEROFILL] DOUBLE[(długość, ilość miejsc)] [UNSIGNED] [ZEROFILL] FLOAT[(długość, ilość miejsc)] [UNSIGNED] [ZEROFILL] DECIMAL[(długość[, ilość miejsc])] [UNSIGNED] [ZEROFILL] NUMERIC[(długość[, ilość miejsc])] [UNSIGNED] [ZEROFILL]

Typy tekstowe/binarne: CHAR[(długość)] [CHARACTER SET nazwa_zbioru_znaków] [COLLATE nazwa_porównania] VARCHAR(długość) [CHARACTER SET nazwa_zbioru_znaków] [COLLATE nazwa_porównania] BINARY[(długość)] VARBINARY(długość) TINYBLOB BLOB MEDIUMBLOB LONGBLOB TINYTEXT TEXT MEDIUMTEXT LONGTEXT [BINARY] [CHARACTER SET nazwa_zbioru_znaków] [COLLATE nazwa_porównania

Typy wyliczeniowe: ENUM(wartość1,wartość2,wartość3,...) [CHARACTER SET nazwa_zbioru_znaków] [COLLATE nazwa_porównania] SET(wartość1,wartość2,wartość3,...) [CHARACTER SET charset_name] [COLLATE nazwa_porównania] Typy określające czas: DATE TIME TIMESTAMP DATETIME YEAR

Opcje Tabeli: {ENGINE TYPE} [=] nazwa_silnika AUTO_INCREMENT [=] wartość AVG_ROW_LENGTH [=] wartość [DEFAULT] CHARACTER SET [=] nazwa_zbioru_znaków CHECKSUM [=] {0 1} [DEFAULT] COLLATE [=] nazwa_porównania COMMENT [=] ciąg znaków' CONNECTION [=] adres' DATA DIRECTORY [=] ' ścieżka do katalogu ' DELAY_KEY_WRITE [=] {0 1} INDEX DIRECTORY [=] ścieżka do katalogu' INSERT_METHOD [=] { NO FIRST LAST } MAX_ROWS [=] wartość MIN_ROWS [=] wartość PACK_KEYS [=] {0 1 DEFAULT} PASSWORD [=] ciąg znaków' ROW_FORMAT [=] {DEFAULT DYNAMIC FIXED COMPRESSED REDUNDANT COMPACT} UNION [=] (nazwa_tabeli[, nazwa_tabeli]...)

Przykład tabeli CREATE TABLE auto ( numer_nadwozia int NAZWA char(32), DATA_PRODUKCJI date, NUMER int, WAGA float, Obrazek blob, Opis text, PRIMARY KEY(numer_nadwozia) );

Usuwanie tabeli DROP TABLE nazwa tablicy CASCADE RESTRICT DROP TABLE auto; Modyfikacja tabeli ALTER [IGNORE] TABLE nazwa tabeli [alter_specification]

Specyfikacja modyfikacji ADD [COLUMN] nazwa_kolumny definicja_kolumny [FIRST AFTER nazwa_kolumny ] ADD [COLUMN] (nazwa_kolumny definicja_kolumny,...) ADD {INDEX KEY} [nazwa_indeksu] [typ_indeksu] (nazwa_indeksu_kolumny,...) [typ_indeksu] ADD [CONSTRAINT [symbol]] PRIMARY KEY [typ_indeksu] (nazwa_indeksu_kolumny,...) [typ_indeksu] ADD [CONSTRAINT [symbol]] UNIQUE [INDEX KEY] [typ_indeksu] [typ_indeksu] (nazwa_indeksu_kolumny,...) [typ_indeksu] ADD [FULLTEXT SPATIAL] [INDEX KEY] [nazwa_indeksu] (nazwa_indeksu_kolumny,...) [typ_indeksu] ADD [CONSTRAINT [symbol]] FOREIGN KEY [nazwa_indeksu] (nazwa_indeksu_kolumny,...) definicja_referencji

ALTER [COLUMN] nazwa_kolumny {SET DEFAULT literał DROP DEFAULT} CHANGE [COLUMN] stara_nazwa_kolumny nowa_nazwa_kolumny definicja_kolumny [FIRST AFTER nazwa_kolumny] MODIFY [COLUMN] nazwa_kolumny definicja_kolumny [FIRST AFTER nazwa_kolumny] DROP [COLUMN] nazwa_kolumny DROP PRIMARY KEY DROP {INDEX KEY} nazwa_indeksu DROP FOREIGN KEY fk_symbol

DISABLE KEYS ENABLE KEYS RENAME [TO] nowa_nazwa_tabeli ORDER BY nazwa_kolumny [, nazwa_kolumny]... CONVERT TO CHARACTER SET nazwa_zbioru_znaków [COLLATE collation_name] [DEFAULT] CHARACTER SET [=] nazwa_zbioru_znaków [COLLATE [=] nazwa_porównania] DISCARD TABLESPACE IMPORT TABLESPACE