Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną nazwę use nazwa; - Wskazanie na naszą bazę danych (wstawiamy właściwą nazwę) show tables; - wykaz tabel w bazie nazwa Typy danych – dane znakowe • CHAR jest typem danych o ustalonej długości – CHAR(wymiar) • VARCHAR jest typem danych o zmiennej długości • VARCHAR(wymiar) Przy deklaracji tego typu danych określamy maksymalną długość Różnica między VARCHAR(50) a CHAR(50): pole o zmiennej długości dostosowuje potrzebną pamięć do rzeczywistej długości łańcucha danych Gdy chcemy zapamiętać większą ilość danych znakowych mamy do dyspozycji specjalny typ dla dużych obiektów tekstowych: w Oracle: CLOB – Character Large Object w Microsoft SQL Server – TEXT w Access – MEMO w MySQL – BLOB albo TEXT Typy danych - dane numeryczne Czasami dane numeryczne przechowuje się w polu znakowym (np. kod pocztowy, numer telefonu lepiej zapamiętać w polu tekstowym) DECIMAL liczba zmiennoprzecinkowa FLOAT liczba zmiennoprzecinkowa INTEGER(rozmiar) liczba całkowita o określonej długości MONEY liczba posiadająca dwie pozycje dziesiętne NUMBER standardowa liczba zmiennoprzecinkowa Kolejny typ danych określa datę i czas; w Access jest to typ DATE Tworzenie tabeli – Do utworzenia tabeli służy polecenie SQL CREATE TABLE: CREATE TABLE nazwa_tabeli struktura_tabeli; Polecenie SQL dla przykładu podanego wyżej będzie wyglądać następująco: CREATE TABLE pracownicy ( imie VARCHAR(30), nazwisko VARCHAR(30), data_urodzenia DATE, placa DECIMAL(10,2) ); +----------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------+------+-----+---------+-------+ | imie | varchar(30) | YES | | NULL | | | nazwisko | varchar(30) | YES | | NULL | | | data_urodzenia | date | YES | | NULL | | | placa | decimal(10,2) | YES | | NULL | | +----------------+---------------+------+-----+---------+-------+ Tworzenie tabeli – CREATE TABLE pracownicy ( imie VARCHAR(30), nazwisko VARCHAR(30), data_urodzenia DATE DEFAULT '1950-01-01', placa DECIMAL(10,2) DEFAULT '1000.00' ); Tabela pracownicy będzie wówczas wyglądać: +----------------+---------------+------+-----+------------+-------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------+------+-----+------------+-------+ | imie | varchar(30) | YES | | NULL | | | nazwisko | varchar(30) | YES | | NULL | | | data_urodzenia | date | YES | | 1950-01-01 | | | placa | decimal(10,2) | YES | | 1000.00 | | +----------------+---------------+------+-----+------------+-------+ Modyfikacja struktur tabeli : - ALTER TABLE Ogólna postać polecenia przedstawia się następująco: ALTER TABLE nazwa_tabeli specyfikacja_struktury; W miejsce specyfikacja_struktury podajesz dokładną operację, jaką chcesz wykonać na danej tabeli. Aby dodać kolejne pole do istniejącej tabeli należy użyć polecenia: ALTER TABLE pracownicy ADD rozmiar_buta VARCHAR(10); Wprowadzanie danych do tabeli : - INSERT Po utworzeniu tabeli należy wypełnić ją danymi. Służy do tego polecenie INSERT. Polecenie SQL dla przykładu będzie wyglądać następująco: INSERT INTO pracownicy VALUES ('Jan', 'Kowalski', '2002-07-20', '1200.00'); Polecenia INSERT można użyć także w innej formie. Za nazwą tabeli można wyspecyfikować listę pól, które będziesz wypełniać danymi. Pozostałe pola przyjmą puste lub standardowe wartości. Zapytanie z wyspecyfikowaną listą pól wygląda następująco: INSERT INTO pracownicy (imie, nazwisko) VALUES ('Izabela', 'Kwiatkowska'); Usuwanie danych z tabeli : DELETE Do usunięcia danych z tabeli służy polecenie DELETE. Aby usunąć wszystkie dane z tabeli należy wydać polecenie: DELETE FROM nazwa_tabeli; Można użyć także warunku wyboru , dzięki któremu wyspecyfikujesz dane przeznaczone do usunięcia. Aby usunąć z przykładowej tabeli pracownicy wszystkie rekordy, w których płaca jest wyższa od 1000 należy wydać następujące polecenie: DELETE FROM pracownicy WHERE placa > 1000; Modyfikacja danych w tabeli - klauzura – UPDATE Poleceniem INSERT można wstawiać nowe dane do istniejącej tabeli. Do modyfikacji danych już wcześniej umieszczonych w tabeli służy polcenie UPDATE. Jego składnia jest następująca: UPDATE nazwa_tabeli SET nazwa_pola='nowa_wartość'; Po słowie kluczowym SET podaj kolejno (po przecinku) nazwy kolumn wraz z nowymi wartościami, jakie powinny przyjąć. Po wydaniu poniższego polecenia: UPDATE pracownicy SET imie='Zofia'; wszystkie rekordy w polu imie będą miały wartość 'Zofia': +-------+--------------+----------------+---------+ | imie | nazwisko | data_urodzenia | placa | +-------+--------------+----------------+---------+ | Zofia | Kowalski | 2002-07-20 | 1200.00 | | Zofia | Kwiatkowska | NULL | NULL | | Zofia | Borowiecki | 1952-08-06 | 1500.34 | | Zofia | Michałkowska | 1970-05-23 | 854.29 | | Zofia | Kowalska | 2002-07-02 | 1200.00 | +-------+--------------+----------------+---------+ Pobieranie danych z tabeli - SELECT Aby pobrać dane zapisane w tabeli należy użyć zapytania SELECT. Jego postać ogólna prezentuje się następująco: SELECT co_zaprezentować FROM nazwa_tabeli [WHERE warunki_wyszukiwania] [ORDER BY sortowanie [ASC | DESC], ...] [LIMIT [ofset,] ilość_wierszy]; W miejscu co_zaprezentować podaj (po przecinku) listę kolumn, które chcesz zawrzeć w zestawieniu. W miejscu nazwa_tabeli podaj nazwę tabeli, z której pobierzesz dane. Wybierając trzy kolumny do zestawienia z tabeli pracownicy napiszesz następująco: SELECT imie, nazwisko, placa FROM pracownicy; Spowoduje to wyświetlenie wszystkich rekordów, jednak w zestawieniu zostaną zaprezentowane jedynie wartości trzech pól: imie, nazwisko i placa: +------------+--------------+---------+ | imie | nazwisko | placa | +------------+--------------+---------+ | Jan | Kowalski | 1200.00 | | Izabela | Kwiatkowska | NULL | | Aleksander | Borowiecki | 1500.34 | | Aniela | Michałkowska | 854.29 | | Katarzyna | Kowalska | 1200.00 | +------------+--------------+---------+ Pobieranie danych z tabeli – SELECT – WHERE Klauzulę WHERE stosuje się najczęściej w poleceniu SELECT. Ma ona jednak zastosowanie także w innych poleceniach operujących na danych takich jak UPDATE, DELETE itp. Stosując operatory przyrównania możesz dokładnie określić, jakie informacje chcesz pobrać. Dozwolone w MySQL operatory przyrównania to: = równe > większe >= większe równe < mniejsze <= mniejsze równe <> lub != różne LIKE służy głównie do porównywania danych łańcuchowych Pobieranie danych z tabeli – SELECT – WHERE Przykłady zastosowania: SELECT * FROM pracownicy WHERE placa >= 1000; Spowoduje wyświetlenie listy pracowników, których płaca jest większa lub równa 1000: +------------+------------+----------------+---------+ | imie | nazwisko | data_urodzenia | placa | +------------+------------+----------------+---------+ | Jan | Kowalski | 2002-07-20 | 1200.00 | | Aleksander | Borowiecki | 1952-08-06 | 1500.34 | +------------+------------+----------------+---------+ SELECT imie, nazwisko, placa FROM pracownicy WHERE nazwisko = 'Kowalski'; Spowoduje wyświetlenie danych (tylko imię, nazwisko i placa) wszystkich pracowników, których nazwisko brzmi dokładnie Kowalski: +------+----------+--------------------+ | imie | nazwisko | placa | +------+----------+--------------------+ | Jan | Kowalski | 1200.00 | +------+----------+--------------------+