MySQL -> Konsola MySQL
Transkrypt
MySQL -> Konsola MySQL
MySQL -> Konsola MySQL Enter password ********* Typ Rozmiar Opis CHAR[Length] Length bajtów Pole o stałej długości, przechowuje od 0 do 255 znaków VARCHAR[Length] Długość łańcucha + 1 bajt Pole tekstowe o zmiennej długości TINYTEXT Długość łańcucha + 1 bajt Łańcuch o maksymalnej długości 255 znaków TEXT Długość łańcucha + 2 bajty Łańcuch o maksymalnej długości 65535 znaków MEDIUMTEXT Długość łańcucha + 3 bajty Łańcuch o maksymalnej długości 16777215 znaków LONGTEXT Długość łańcucha + 4 bajty Łańcuch o maksymalnej długości 4294967295 znaków TINYINT[Length] 1 bajt Liczby z zakresu od -128 do 127 lub liczby dodatnie od 0 do 255 SMALLINT[Length] 2 bajty Liczby z zakresu od -32768 do 32767 lub liczby dodatnie od 0 do 65535 MEDIUMINT[Length] 3 bajty Liczby z zakresu od -8388608 do 8388607 lub liczby dodatnie od 0 do 16777215 INT[Length] 4 bajty Liczby z zakresu od -2147483648 do 2147483647 lub liczby dodatnie od 0 do 4294967295 BIGINT[Length] 8 bajtów Liczby z zakresu od -9223372036854775808 do 9223372036854775807 lub liczby dodatnie od 0 do 18446744073709551615 FLOAT 4 bajty Mała liczba rzeczywista, zmiennoprzecinkowa DOUBLE[Length, Decimals] 8 bajtów Duża liczba rzeczywista, zmiennoprzecinkowa DECIMAL[Length, Decimals] Length + 1 lub Length + 2 bajtów Liczba typu DOUBLE przechowywana w postaci łańcucha co pozwala na zastosowanie stałej liczby miejsc po przecinku DATE 3 bajty Data w formacie YYYY-MM-DD DATETIME 8 bajtów Data w formacie YYYY-MM-DD HH:MM:SS TIMESTAMP 4 bajty Data w formacie YYYYMMDDHHMMSS; dopuszczalny zakres kończy się na rok 2037 TIME 3 bajty Data w formacie HH:MM:SS str. 1 ENUM 1 lub 2 bajty Enumeracja (wyliczenie). W kolumnie może się znaleźć jedna z podanych wartości SET 1, 2, 3, 4 lub 8 bajtów Tak samo jak ENUM z tym że w kolumnie może się znaleźć kilka wartości jednocześnie Nazwa bazy: firma Tabela nr 1: pracownicy Pola: id int auto_increment imie varchar(20) nazwisko varchar (20) dzial int zarobki int primary key(id) Wyświetlanie dostępnych baz danych 1. mysql> show databases; Zakładanie bazy 2. mysql>create database firma; Przejście do określonej bazy 3. mysql>use firma; Tworzenie pól w tabeli 4. mysql>create table pracownicy(id int auto_increment, imie varchar(20), nazwisko(20), dzial int, primary key(id)); Wyświetlanie tabeli 5. mysql>desc pracownicy; wstawianie pól do tabeli mysql> alter table nazwa_tabeli ADD nazwa_pola typ_danych; usuwanie pola z tabeli mysql>alter table nazwa_tabeli DROP COLUMN nazwa_pola; WSTAWIANIE DANYCH DO PÓL TABELI PRACOWNICY – insert into pracownicy values(……….) 6. mysql> insert into pracownicy values(null,’Adam’, ‘Kowalski’, 1, 2000); 7. mysql> insert into pracownicy values(null,’Marek’, ‘Nowak’, 2, 2500); 8. mysql> insert into pracownicy values(null,’Adam’, ‘Kalinowski’, 3, 3000); 9. mysql> insert into pracownicy values(null,’Tomasz’, ‘Brzozowski’, 4, 3200); 10. mysql> insert into pracownicy values(null,’Jan’, ‘Nowicki’, 5, 2800); Wyświetlanie wszystkich pól tabeli pracownicy 11. mysql>select * from pracownicy; Wyświetlanie określonych pól z tabeli pracownicy 12. mysql>select * from pracownicy where imie=’Adam’; str. 2 MODYFIKOWANIE DANYCH W POLACH TABELI PRACOWNICY – update 13. mysql>update pracownicy set dzial=2 where imie=’Tomasz’ and nazwisko=’Brzozowski’; lub mysql>update pracownicy set dzial=2 where id=4; (bo Brzozowski ma id=4) Polecenie: zmień imie Jan ( id=5) na Janusz) 14. mysql>update pracownicy set imie=’Janusz’ where id=5; Wybierz tych, których zarobki są wyższe od 2500 15. mysql>select * pracownicy where zarobki >2500; Zsumuj zarobki wszystkich pracowników mysql>select sum(zarobki) from pracownicy; Stosowanie aliasów (nazw zastępczych, w naszym przypadku zamiast sum(zarobki) AS ile 16. mysql>select sum(zarobki) as ile from pracownicy; Średnia z zarobki wszystkich pracowników - avg 17. mysql>select avg(zarobki) from pracownicy; Zliczanie wszystkich pracowników count(1) lub count(*) 18. mysql>select count(*) from pracownicy; Wyliczanie średniej dla pracowników, których zarobki są większe równe 3000 mysql>select avg(zarobki) from pracownicy where zarobki >=3000; KASOWANIE DANYCH - delete Skasujemy Brzozowskiego, który ma id=4 19. mysql>delete from pracownicy where id=4; Sprawdź czy osoba została skasowana (jak?) Przywróć Tomasza Brzozowskiego 20. mysql>insert into from pracownicy values(null, ‘Tomasz’, ‘Brzozowski’, 2,3200); Zauważ, jaki numer id otrzymał skasowany rekord? – Wyciągnij wnioski, dlaczego tak się stało? Zmień dział na 2 pracownikowi o id=5 Zmień dział na 1 pracownikowi o id=3 21. mysql>update pracownicy set dzial=1 where id=3; TWORZENIE NOWEJ TABELI O NAZWIE DZIALY pola: numer int nazwa varchar(15) primary key(numer) 23.mysql>create table dzialy(numer int, nazwa varchar(15), primary key(numer)); WSTAWIANIE DANYCH DO TABELI DZIALY 24.mysql>insert into dzialy values(1,’Produkcja’); mysql>insert into dzialy values(2,’Marketing’); str. 3 Pokaż wszystkie rekordy z tabeli dzialy 25. mysql>select * from dzialy; 26. Chcemy teraz wyświetlić dane z dwóch tabel: imie, nazwisko, nazwa gdzie dzial=numer mysql>select imie, nazwisko, nazwa from pracownicy, dzialy where dzial=numer; Wyjście z bazy 27. mysql> quit Tabela PRACOWNICY id int auto_increment imie varchar(20) nazwisko varchar (20) dzial int zarobki int primary key(id) str. 4 Tabela DZIALY pola: numer int nazwa varchar(15) primary key(numer)