MySQL2.pdf
(
84 KB
)
Pobierz
Typy danych
Typy danych
MySQL posługuje się typami danych należącymi do trzech grup:
·
liczby
·
daty i czas
·
łańcuchy
Typy liczbowe całkowite
:
Typ
Zakres
Liczba
bajtów
Opis
BIT
zmienna 1..64 bitów
BOOL, BOOLEAN
1
wartość 0 oznacza
false
wartość różna od zera
true
TINYINT
-127..127 liczby ze znakiem
0..255 liczby bez znaku
1
SMALLINT
-32768..32767 liczby ze znakiem
0..65535 liczby bez znaków
1
MEDIUMINT
-2
23
..2
23
-1 liczby ze znakiem
0..2
24
-1 liczby bez znaków
2
INT, INTEGER
-2
31
..2
31
-1 liczby ze znakiem
0..2
32
-1 liczby bez znaków
4
BIGINT
-2
63
..2
63
-1 liczby ze znakiem
0..2
64
-1 liczby bez znaków
8
Dozwolone są także modyfikatory:
USIGNED
dla wartości liczbowych bez znaku
ZEROFIL
jeżeli liczba cyfr jest mniejsza od maksymalnej liczby znaków, brakujące znaki są
dopełniane zerami; jednocześnie liczba jest traktowana jako bez znaku
Przykład 1.
Utwórz tabelę, zawierającą kolumnę zawierającą liczby całkowite dodatnie, o maksymalnej liczbie
wyświetlanych znaków 10 i wartościach nieujemnych. Brakujące znaki dopełnij zerami
mysql> CREATE TABLE nazwisko (
-> kolumna BIGINT(10) ZEROFILL );
Query OK, 0 rows affected (0,00 sec)
Typy liczbowe zmiennoprzecinkowe
Typ
Zakres
Liczba
bajtów
Opis
FLOAT (precyzja)
zmienny
4 lub 8
precyzja
=0..24
pojedyncza precyzja
precyzja
=25..63
podwójna precyzja
FLOAT
-3.4028(...)E+38..3.4028(...)E+38
4
liczby pojedynczej
precyzji
DOUBLE, DOUBLE
PRECISION, REAL
-1.1976(...)E+308..1.7976(...)E+308
8
liczby podwójnej
precyzji
DECIMAL, DEC,
NUMERIC, FIXED
zmienny
zmienna
Liczbę miejsc po przecinku określa się:
typ(m1,m2)
gdzie:
m1
– szerokość pola wyświetlania liczby,
m2
– liczba miejsc po przecinku
Przykład 2.
Utwórz tabelę zawierającą kolumnę z wartościami całkowitymi i rzeczywistymi wyświetlanymi za
pomocą pięciu cyfr z dokładnością dwóch znaków po kropce.
mysql> CREATE TABLE warzywniak (
-> dostawca INTEGER,
-> cena DECIMAL(5,2) );
Query OK, 0 rows affected (0,02 sec)
Typ data i czas
Typ
Zakres
Liczba
bajtów
Opis
DATE
1000-01-01..9999-12-31
3
data w formacie
RR[RR]-MM-DD
DATETIME
1000-01-01 00:00:00 .. 9999-12-31 23:59:59
8
data i czas w
formacie [RR]RR-
MM-DD GG:MM:SS
TIMESTAMP
dodatkowe ustawienia
4
znacznik czasu
TIME
-838:59:59 .. 838:59:59
3
czas w formacie
GG[G]:MM:SS
YEAR
1901 .. 2155
1
rok w formacie
[RR]RR
znaki w nawiasach [ ] są opcjonalne
Przykład 3.
Utwórz tabelę
ksiazka
zawierającą kolumny:
·
autor
ciąg maksymalnie trzydziestu znaków
·
tytul
ciąg maksymalnie czterdziestu znaków
·
data
data wydania książki
Typ łańcuchowy
CHAR(liczba_znaków)
,
VARCHAR(liczba_znaków)
ciąg znaków o długości
liczba_znaków
(maksymalnie: 255 –
CHAR
i 65535 -
VARCHAR
); dla typu
CHAR
, krótsze ciągi znaków zostaną
uzupełnione spacjami
BLOB
,
TEXT
przechowują odpowiednio ciągi binarne i tekstowe o maksymalnej długości 65535 bajtów
ENUM
,
SET
typ wyliczeniowy i zbiorowy:
ENUM('wartość_1', 'wartość_2', ..., 'wartość_n')
- w danym polu wiersza znajduje
się tylko jedna wartość; zdefiniować można maksymalnie 65535 wartości
SET('wartość_1', 'wartość_2', ..., 'wartość_n')
w danym polu wiersza znajduje
się dowolny podzbiór dozwolonych wartości; zbiór zawiera maksymalnie 64 wartości
Przykład 4.
Utwórz tabelę zawierającą kolumny:
·
nazwisko
ciąg maksymalnie dwudziestu znaków
·
kolor_oczu
jedna z możliwych wartości dla koloru oczu
Przykład 5.
Utwórz tabelę
student
zawierającą kolumny:
·
nr_indeksu
maksymalnie pięć cyfr; numer indeksu studenta
·
nazwisko
ciąg maksymalnie trzydziestu znaków; nazwisko studenta
·
imie
ciąg maksymalnie dwudziestu znaków; imię studenta
·
semestr
numer aktualnego semestru
·
przedmioty
typ zbiorowy; przedmioty wymagane w danym semestrze
Atrybuty kolumn
Kolumny w tabeli mogą posiadać dodatkowe atrybuty:
1)
PRIMARY KEY
kolumna oznaczona tym atrybutem jest kluczem podstawowym; kolumna taka
zawiera w każdym wierszu unikalne wartości i jest automatycznie indeksowana; dzięki temu
przeszukiwanie i sortowanie działa szybciej
tablica z jednym kluczem podstawowym:
CREATE TABLE nazwa (
kolumna INTEGER PRIMARY KEY,
...
)
tablica z wieloma kluczami podstawowymi:
CREATE TABLE nazwa (
kolumna_1 typ_kolumny_1 [atrybuty]
kolumna_2 typ_kolumny_2 [atrybuty]
...
kolumna_n typ_kolumny_n [atrybuty]
PRIMARY KEY (kolumna_p, kolumna_r, ...)
)
2)
NOT NULL
kolumna z takim atrybutem nie może zawierać wartości pustej (NULL)
3)
AUTO_INCREMENT
kolumna z wartościami całkowitymi, nieprzypisanie wartości lub wpisanie
wartości zero, spowoduje wstawienie wartości o jeden większej od maksymalnej
dotychczasowej wartości w kolumnie
4)
INDEX
kolumna indeksowana
5)
UNIQUE
kolumna zawiera niepowtarzalne wartości
6)
DEFAULT wartosc
domyślna wartość wstawiana do kolumny, w przypadku nie wpisania wartości
Przykład 6.
Utwórz tabelę pracownicy zawierającą kolumny
numer
,
nazwisko
,
imie
,
PESEL
. Ustaw kolumny
numer
i
PESEL
jako klucze podstawowe. Żadna kolumna nie może zawierać wartości pustej. Kolumna
numer
ma być automatycznie zwiększana.
Wyświetlanie struktury tabeli
Wyświetlenie struktury tabeli
tabela
z bazy
baza
:
SHOW COLUMNS FROM tabela FROM baza
lub
SHOW COLUMNS FROM baza.tabela
Wyświetlenie kolumn, których nazwa zaczyna się od
naz
SHOW COLUMNS FROM baza.tabela LIKE 'naz%'
Wprowadzanie danych do tabeli
INSERT [INTO] tabela [(kolumna_1, ..., kolumna_n)] VALUES (wartość_1, ...,
wartość_n)
lub
INSERT [INTO] tabela SET kolumna_1=wartość_1, ..., kolumna_n=wartość_n)
lub wprowadzanie wielu wierszy
INSERT [INTO] tabela [(kolumna_1, ..., kolumna_n)]
VALUES
(wartość_1_1, ..., wartość_1_n),
(wartość_2_1, ..., wartość_2_n),
...
(wartość_m_1, ..., wartość_m_n),
Pobieranie danych z tabeli
Instrukcja
SELECT
pozwala pobrać dane z tabeli i wymienionych kolumn jeżeli spełniony jest warunek
SELECT kolumna_1, ..., kolumna_n FROM tabela [WHERE warunek] [ORDER BY
kolumna_1, ..., kolumna_n [ASC|DESC]]
lub dla wszystkich kolumn
SELECT * FROM tabela [WHERE warunek] [ORDER BY kolumna_1, ..., kolumna_n
[ASC|DESC]]
Zadanie 1.
Utwórz plik z poleceniami dla MySQL zawierający polecenia:
1. tworzące tabelę
hurtownia
zawierającą kolumny:
nr_inw
numer inwentarzowy towaru, wartości całkowite automatycznie powiększane,
klucz podstawowy
data
data dostawy, kolumna nie może zawierać wartości pustych
nr_dost
numer identyfikacyjny dostawcy towaru, klucz podstawowy, kolumna nie
może zawierać wartości pustych
liczba
ilość sztuk dostarczonego towaru
cena
wartość dostarczonego towaru, liczba z dokładnością do dwóch cyfr po kropce
2. tworzące tabelę
odbiorca
i
zamawiajacy
(kolumny
nr
,
nazwa
,
adres
)
3. wyświetlające strukturę trzech tabel
4. wprowadzające wartości do każdej z tabel; minimum dziesięć wartości do każdej z tabel
5. pobierz dane z tabeli
hurtownia
zawarte w kolumnach
data
i
dostawca
6. pobierz kolumny
nazwa
i
adres
z tabel
odbiorca
i
zamawiajacy
Plik z chomika:
grypsss
Inne pliki z tego folderu:
AKADEMIA GORNICZO.doc
(25 KB)
instrukcja[1].01.doc
(211 KB)
www.doc
(25 KB)
Charakterystyka Ssaków.doc
(132 KB)
Projekt 1.pdf
(36 KB)
Inne foldery tego chomika:
Fizyka
sesja
Zgłoś jeśli
naruszono regulamin