DDL.pdf
(
110 KB
)
Pobierz
Microsoft Word - DDL.doc
Microsoft Access i j
ħ
zyk SQL
Cz
ħĻę
1 – DDL
Radosław Brunke
1
Spis tre
Ļ
ci:
1. Instrukcja CREATE ........................................................................................................... 3
1.1. Tworzenie tabel .......................................................................................................... 3
Typy danych Microsoft JetSQL ......................................................................................... 3
Okre
Ļ
lanie wymogu wprowadzenia danych do pola.......................................................... 4
Tworzenie tabel zawieraj
Ģ
cych klucze............................................................................... 5
Tworzenie relacji pomi
ħ
dzy tabelami ................................................................................ 5
1.2. Tworzenie indeksów .................................................................................................. 6
Tworzenie indeksu ............................................................................................................. 7
Tworzenie indeksów specjalnych....................................................................................... 7
2. Instrukcja ALTER TABLE ................................................................................................ 8
2.1. Usuwanie kolumn z tabeli .......................................................................................... 8
2.2. Wstawianie kolumn do tabeli ..................................................................................... 8
2.3. Modyfikacja kolumn .................................................................................................. 8
Tworzenie kluczy na istniej
Ģ
cych polach........................................................................... 8
Zmiana wymuszania wprowadzania warto
Ļ
ci dla kolumny............................................... 9
2.4. Obsługa kluczy i relacji w istniej
Ģ
cych tabelach ....................................................... 9
2.5. Specjalne zastosowania kluczy ................................................................................ 10
3. Instrukcja DROP .............................................................................................................. 10
3.1. Usuwanie tabel ......................................................................................................... 10
3.2. Usuwanie indeksu .................................................................................................... 10
DODATEK A – Spis przykładowych kwerend ....................................................................... 11
DODATEK B – Spis tabel ....................................................................................................... 11
DODATEK C – Spis rysunków ............................................................................................... 11
2
1. Instrukcja CREATE
Za pomoc
Ģ
instrukcji CREATE mo
Ň
liwe jest stworzenie nast
ħ
puj
Ģ
cych obiektów:
- tabeli,
- tabeli powi
Ģ
zanej relacj
Ģ
,
- indeksu w istniej
Ģ
cej tabeli.
1.1. Tworzenie tabel
Za pomoc
Ģ
DDL mo
Ň
liwe jest stworzenie zarówno pustych tabel jak te
Ň
i tabel zawieraj
Ģ
cych
pola.
CREATE TABLE Nazwa_tabeli;
CREATE TABLE [Nazwa ze spacjami];
Kwerenda 1 Tworzenie pustej tabeli
CREATE TABLE [Nazwa tabeli] (
[Nazwa kolumny pierwszej] typ_danych,
[Nazwa kolumny drugiej] typ danych,
…
);
Kwerenda 2 Tworzenie tabeli zawieraj
Ģ
cej kolumny
Typy danych Microsoft JetSQL
W widoku SQL kwerendy obsługiwane s
Ģ
tylko wybrane typy danych, dost
ħ
pne podczas
tworzenia tabel za pomoc
Ģ
innych narz
ħ
dzi (kreatora tabel lub narz
ħ
dzia do projektowania
tabel). Sytuacja ta wynika z ograniczenia tego widoku, polegaj
Ģ
cego na tym,
Ň
e umo
Ň
liwia on
wykorzystanie jedynie metody DAO dost
ħ
pu do danych. Pozostałe typy danych mo
Ň
na
deklarowa
ę
SQL
jedynie
przez
u
Ň
ycie
j
ħ
zyka
VBA
ADO
(CurrentProject.Connection.Execute).
CREATE TABLE Przykład (
Tekst CHAR(50),
Nota MEMO,
Bajt BYTE,
Liczba_całk SMALLINT,
Liczba_całk_długa LONG,
Poj_prec SINGLE,
Podw_prec DOUBLE,
Data_ogólna DATE,
Walutowy CURRENCY,
Autonumerowanie COUNTER,
TakNie YESNO,
ObiektOLE LONGBINARY
)
Kwerenda 3 Przykładowa kwerenda tworz
Ģ
ca tabel
ħ
z kolumnami wielu typów danych
3
w
Nazwa typu
Synonimy
Typ danych
Opis dodatkowy
TYPY TEKSTOWE
CHARACTER STRING,
VARCHAR,
NCHAR
Tekst o długo
Ļ
ci do 255
znaków
Jako dodatkow
Ģ
opcj
ħ
dla tego pola mo
Ň
na poda
ę
w
nawiasie
długo
Ļę
ła
ı
cucha
np.
CHARACTER(25)
MEMO
LONGTEXT,
LONGCHAR,
NOTE, NTEXT
Nota
Maksymalna wielko
Ļ
c pola to około 1,07
miliarda znaków (2,14GB)
TYPY NUMERYCZNE
BYTE
TINYINT
Bajt
Zakres: 0 do 255
SMALLINT
SHORT
Liczba całkowita
Zakres: -32768 do 32767
LONG
INTEGER
Liczba całkowita długa Zakres: –2147483648 do 2147483647
SINGLE
REAL,
IEEESINGLE
Liczba rzeczywista o
pojedynczej precyzji
Zakres dla liczb ujemnych: –3,402823E38 do –
1,401298E–45, dla liczb dodatnich: 1.401298E–
45 do 3.402823E38.
DOUBLE
FLOAT,
IEEEDOUBLE
Liczba rzeczywista o
podwójnej precyzji
Zakres dla liczb ujemnych: –
1.79769313486231E308 do
–4.94065645841247E–324, dla liczb dodatnich:
1.79769313486231E308
do
4.94065645841247E–324
TYPY ZWI
ġ
ZANE Z OKRE
ĺ
LANIEM CZASU
DATETIME
DATE
Data/godzina
TYPY WALUTOWE
CURRENCY
MONEY
Walutowy
TYPY LOGICZNE
YESNO
BIT
Tak/nie
TYPY ZWI
ġ
ZANE Z OLE
BINARY
Liczba dwójkowa
Obiekt o maksymalnej pojemno
Ļ
ci 164 znaki
(510 bajtów)
LONGBINARY
Obiekt OLE Obiekt o maksymalnej pojemno
Ļ
ci 2,14 GB
TYPY SPECJALNE
COUNTER
Autonumerowanie
Jako parametr mo
Ň
na tu poda
ę
dwie warto
Ļ
ci
liczbowe warto
Ļę
pocz
Ģ
tkow
Ģ
indeksu oraz
wielko
Ļę
przyrostu kolejnych warto
Ļ
ci indeksu
np. COUNTER(100, 10)
GUID
Identyfikator replikacji
Tabela 1 Typy danych oferowane w DAO
Okre
Ļ
lanie wymogu wprowadzenia danych do pola
Dla ka
Ň
dego z tworzonych pól mo
Ň
emy okre
Ļ
li
ę
,
Ň
e mo
Ň
e lub nie mo
Ň
e ono zawiera
ę
warto
Ļ
ci
pustych. Robimy to deklaruj
Ģ
c po nazwie pola instrukcj
ħ
NULL lub NOT NULL. Aliasem dla
NOT NULL jest słówko UNIQUE:
CREATE TABLE [Dane osobowe](
Imi
ħ
CHAR(50) NOT NULL,
Nazwisko CHAR(60) NOT NULL,
Pesel CHAR(11) NULL
)
Kwerenda 4 Przykład kwerendy z wymuszeniami wprowadzania warto
Ļ
ci do pola
4
Tworzenie tabel zawieraj
Ģ
cych klucze
W ramach tabeli mo
Ň
emy utworzy
ę
pole klucza głównego. Ka
Ň
dy z kluczy głównych
powinien mie
ę
unikaln
Ģ
nazw
ħ
– definiowan
Ģ
oddzielnie bez wzgl
ħ
du na nazw
ħ
pola, która
przechowuje warto
Ļ
ci klucza. Klucz tworzymy deklaruj
Ģ
c słówko kluczowe CONSTRAINT
1
po okre
Ļ
leniu typu danych pola klucza
2
. Nast
ħ
pnie okre
Ļ
lamy nazw
ħ
klucza – warto przyj
Ģę
zasad
ħ
dodawania do nazwy pola przedrostka PK_ i na koniec słów kluczowych PRIMARY
KEY. Nazw
ħ
klucza mo
Ň
na pó
Ņ
niej wykorzysta
ę
do okre
Ļ
lania relacji mi
ħ
dzy tabelami. Je
Ļ
li
projektujemy relacyjn
Ģ
bazy danych warto na ko
ı
cu wymusi
ę
konieczno
Ļę
wprowadzenia
danych NOT NULL, spowoduje to automatyczne utworzenie indeksu dla klucza głównego
w tworzonej tabeli.
CREATE TABLE [Dane osobowe](
IDO INTEGER CONSTRAINT PK_IDO PRIMARY KEY NOT NULL,
Imi
ħ
CHAR(50) NOT NULL,
Nazwisko CHAR(60) NOT NULL,
Pesel CHAR(11) NULL
)
Kwerenda 5 Przykład kwerendy tworz
Ģ
cej pole klucza głównego w tabeli
Tworzenie relacji pomi
ħ
dzy tabelami
Za pomoc
Ģ
j
ħ
zyka JetSQL mo
Ň
emy ju
Ň
w momencie tworzenia tabeli zadeklarowa
ę
tworzenie
relacji
3
w bazie danych. Je
Ň
eli mamy w bazie danych utworzon
Ģ
tabel
ħ
(np. tabel
ħ
Miasta),
która powi
Ģ
zana jest z inn
Ģ
tabel
Ģ
za pomoc
Ģ
swojego klucza głównego, mo
Ň
emy utworzy
ę
tabel
ħ
powi
Ģ
zan
Ģ
relacj
Ģ
(np. tabel
ħ
Mieszka
ı
cy) wraz z t
Ģ
relacj
Ģ
, deklaruj
Ģ
c istnienie klucza
obcego Foreign Key (przedrostek FK_) z okre
Ļ
leniem relacji przy pomocy słówka
REFERENCES.
CREATE TABLE Miasta (
IDMA COUNTER CONSTRAINT PK_IDMA PRIMARY KEY NOT NULL,
Miasto CHAR(40),
[Kod pocztowy] CHAR(6)
)
CREATE TABLE Mieszka
ı
cy (
IDMY COUNTER CONSTRAINT PK_IDMY PRIMARY KEY NOT NULL,
Imi
ħ
CHAR(30),
Nazwisko CHAR(40),
IDMA INTEGER NOT NULL CONSTRAINT FK_IDMA
REFERENCES Miasta(IDMA)
)
Kwerenda 6 Przykłady kwerend tworz
Ģ
cych tabele powi
Ģ
zane relacj
Ģ
1
Słówko CONSTRAINT mo
Ň
emy pomin
Ģę
, spowoduje to jednak wygenerowanie losowej nazwy klucza przez
Access co mo
Ň
e spowodowa
ę
pó
Ņ
niejsze problemy z oprogramowywaniem bazy danych, na przykład
usuwaniem relacji z poziomu DDL itp.
2
Klucz główny tabeli mo
Ň
e by
ę
dowolnego typu – musi on jednak spełnia
ę
minimum dwa wymogi: nie mo
Ň
e
by
ę
warto
Ļ
ci
Ģ
pust
Ģ
i musi mie
ę
warto
Ļę
unikaln
Ģ
w tabeli.
3
5
JetSQL umo
Ň
liwia tworzenie wył
Ģ
cznie relacji jeden do wielu, pomimo tego
Ň
e Access obsługuje równie
Ň
relacje jeden do jednego. Aby stworzy
ę
relacj
ħ
jeden do jednego, nale
Ň
y w j
ħ
zyku SQL stworzy
ę
relacj
ħ
jeden
do wielu i w widoku relacji zmieni
ę
typ relacji b
Ģ
d
Ņ
zrezygnowa
ę
z SQL do stworzenia tej relacji.
Plik z chomika:
tryniti
Inne pliki z tego folderu:
SQL.doc
(281 KB)
plsql_fsql.ppt
(62 KB)
SQL10G.pdf
(780 KB)
sql2.pdf
(224 KB)
plsql.pdf
(580 KB)
Inne foldery tego chomika:
algebra liniowa
algorytmy i struktury danych
analiza matematyczna
angol
architektura komputerow
Zgłoś jeśli
naruszono regulamin