Podstawy MYSQL

background image

Podstawy MYSQL

1. Łączenie się z bazą danych

mysql –u root –p hasło

2. Kończenie połączenia z bazą danych

quit

3. Tworzenie i usuwanie baz danych

CREATE DATABASE nazwa_bazy;

DROP DATABASE nazwa_bazy;

4. Wybór bazy danych po zalogowaniu do serwera

Polecenia use służy do wyboru bazy. Jeśli chcemy pracować z bazą o nazwie test1, musimy po prostu
wydać polecenie:

use test1;

Wybór zostanie potwierdzony przez komunikat: Database changed

Jeśli chcemy połączyć się z bazą danych z uprawnieniami dowolnego użytkownika:

mysql -u nazwa_użytkownika –p hasło nazwa_bazy

mysql nazwa_bazy -u nazwa_użytkownika -p hasło

5. Tworzenie konta użytkownika z jednoczesnym nadaniem hasła

Aby utworzyć konto użytkownika o przykładowej nazwie jank oraz haśle odg78XY_23c, należy
wykonać polecenie:

CREATE USER jank IDENTIFIED BY 'odg78XY_23c';

lub też w pełnej wersji:

CREATE USER jank IDENTIFIED BY PASSWORD 'odg78XY_23c';

6. Usuwanie konta użytkownika

Aby usunąć dwa konta użytkowników o nazwach jank i andrzej_n, należy wykonać instrukcję:

DROP USER jank, andrzej_n;

Jeśli trzeba zmienić nazwę istniejącego konta użytkownika, można użyć instrukcji

background image

RENAME USER w schematycznej postaci:

RENAME USER stara_nazwa TO nowa_nazwa;

7. Zmiana hasła użytkownika

Do zmiany oraz ustalania hasła użytkownika można użyć instrukcji SET PASSWORD. Jej ogólna postać
jest następująca:

SET PASSWORD [FOR użytkownik] = PASSWORD('tekst_hasła');

Aby zmienić hasło użytkownika o nazwie np. jan_kowalski na ciąg Xdio83PWgk, należy użyć instrukcji:

SET PASSWORD FOR jan_kowalski = PASSWORD('Xdio83PWgk');

8. Uprawnienia użytkowników

Parametry ujęte w nawiasy kwadratowe są opcjonalne. Wydanie takiego polecenia oznacza: nadaj
użytkownikowi użytkownik prawa do obiektu obiekt wskazywane przez parametr prawa oraz hasło
wskazywane przez parametr hasło. Jeśli konto nie istnieje, zostanie utworzone, jeśli istnieje, zostaną
jedynie przypisane do niego odpowiednie uprawnienia.

Wartości parametru prawa polecenia GRANT

ALL [PRIVILEGES] Ustawia wszystkie przywileje z wyjątkiem GRANT OPTION.
ALTER Zezwala na użycie polecenia ALTER TABLE (zmianę struktury tabel).
ALTER ROUTINE Pozwala na zmianę oraz usuwanie procedur składowanych (ang. stored routines).
CREATE Zezwala na użycie polecenia CREATE TABLE (tworzenie tabel) i CREATE DATABASE (tworzenie baz).
CREATE ROUTINE Zezwala na tworzenie procedur składowanych.
CREATE TABLESPACE Pozwala na tworzenie, usuwanie i modyfikację przestrzeni tabel**.
CREATE TEMPORARY TABLES Zezwala na użycie polecenia CREATE TEMPORARY TABLE (tworzenie tabel
tymczasowych).
CREATE USER Zezwala na użycie poleceń: CREATE USER, DROP USER,
RENAME USER oraz REVOKE ALL PRIVILEGES (zarządzanie kontami użytkowników).
CREATE VIEW Zezwala na użycie polecenia CREATE VIEW (tworzenie tzw. perspektyw, inaczej widoków).
DELETE Zezwala na użycie polecenia DELETE (usuwanie wierszy z tabel).
DROP Zezwala na użycie polecenia DROP TABLE (usuwanie tabel).
EVENT Umożliwia zarządzanie zadaniami z harmonogramu zadań
EXECUTE Zezwala na uruchamianie procedur składowanych.
FILE Zezwala na użycie poleceń: SELECT ... INTO OUTFILE oraz LOAD DATA INFILE (zapis i odczyt danych z
zewnętrznych plików).
GRANT OPTION Umożliwia nadawanie i odbieranie przywilejów dla innych kont.
INDEX Zezwala na użycie poleceń: CREATE INDEX oraz DROP INDEX (tworzenie i usuwanie indeksów).
INSERT Zezwala na użycie polecenia INSERT (dodawanie wierszy do tabel).
LOCK TABLES Zezwala na użycie polecenia LOCK TABLES na tabelach, dla których użytkownik ma prawa do
wykonywania polecenia SELECT.

background image

PROCESS Zezwala na użycie polecenia SHOW FULL PROCESSLIST (wyświetlenie listy procesów).
PROXY Pozwala na ustanowienie użytkownika pośredniczącego (ang. proxy user).
REFERENCES Przywilej rozpoznawany przez serwer, ale aktualnie niezaimplementowany.
RELOAD Zezwala na użycie polecenia FLUSH.
REPLICATION CLIENT Zezwala na użycie poleceń SHOW MASTER STATUS i SHOW SLAVE STATUS.
REPLICATION SLAVE Przywilej niezbędny dla kont, przez które serwery podrzędne (slave server) kontaktują się
z serwerem głównym (master server).
SELECT Zezwala na użycie polecenia SELECT (wykonywanie zapytań).
SHOW DATABASES Zezwala na użycie polecenia SHOW DATABASES (wyświetlenie listy baz danych).
SHOW VIEW Zezwala na użycie polecenia SHOW CREATE VIEW.
SHUTDOWN Pozwala na kończenie pracy serwera.
SUPER Zezwala na wykonywanie operacji administracyjnych, w tym użycie poleceń CHANGE MASTER, KILL,
PURGE MASTER LOGS oraz SET GLOBAL.
TRIGGER Zezwala na operacje na wyzwalaczach.
UPDATE Zezwala na użycie polecenia UPDATE (modyfikacja zawartości tabel).
USAGE Pozwala jedynie na dostęp do bazy, bez żadnych dodatkowych uprawnień.

Nadaj użytkownikowi posługującemu się nazwą janek prawa do logowania
się do serwera.

9. Zmiana hasła za pomocą instrukcji GRANT

Użyj polecenia GRANT do zmiany hasła użytkownika janek na ciąg rgh768HH.

10. Uprawnienia do tworzenia i modyfikacji tabel

Nadaj wybranemu użytkownikowi uprawnienia do tworzenia i modyfikacji tabel w bazie test1.

Prawo do tworzenia tabel to CREATE, dodawania danych — INSERT, modyfikacji danych — UPDATE,
usuwania danych — DELETE

11. Nadanie uprawnień do pobierania i dodawania danych

Nadaj wybranemu użytkownikowi prawa wykonywania zapytań typu SELECT i INSERT w bazie test1.

background image

12. Prawo do nadawania uprawnień

Nadaj wybranemu użytkownikowi uprawnienia do wykonywania zapytań typu SELECT dla tabeli o
nazwie osoby znajdującej się w bazie test1 oraz do przekazywania tego uprawnienia innym
użytkownikom.

Aby nadać prawa do wybranej tabeli, jako określenie obiektu należy użyć konstrukcji w postaci:
nazwa_bazy.nazwa_tabeli

13. Informacja o uprawnieniach wybranego użytkownika

14. Odbieranie wybranych uprawnień

Odbierz wybranemu użytkownikowi prawa do wykonywania zapytań typu UPDATE i DELETE w bazie
test1.

15. Dostępne bazy danych

SHOW DATABASES;

Tworzenie struktury bazy danych

Typy danych w MYSQL

Link

16. Ogólna postać instrukcji CREATE

background image

17. Utworzenie prostej tabeli

18. Utworzenie tabeli, o ile nie istnieje ona już w bazie

Napisz instrukcję tworzącą tabelę Klient , która nie spowoduje wystąpienia błędu w sytuacji, jeśli
tabela o takiej nazwie będzie już istniała w bazie.

19. Tabela tymczasowa

Tymczasowość tabeli zapewnia słowo TEMPORARY umieszczone za CREATE, czyli instrukcja w
ogólnej postaci:

CREATE TEMPORARY TABLE
nazwa_tabeli
(
definicje kolumn
);





background image


Utwórz tymczasową tabelę o dwóch dowolnych kolumnach.

20. Tworzenie jednej tabeli na podstawie innej

Utwórz tabelę Klient2 o strukturze pobranej z tabeli Klient. W celu wykonania ćwiczenia należy użyć
instrukcji:

21. Kolumna z typem wyliczeniowym ENUM

Utwórz tabelę zawierającą kolumnę, która będzie mogła przechowywać jedną z wartości: zielony,
czerwony, niebieski.

22. Kolumna z typem wyliczeniowym SET

Utwórz tabelę zawierającą kolumnę, która będzie mogła przechowywać dowolny podzbiór z wartości:
zielony, czerwony, niebieski.

23. Atrybuty kolumn

PRIMARY KEY (klucz główny)

W przypadku gdyby klucz główny miał się składać z więcej niż jednej kolumny, jego definicja będzie
wyglądała inaczej. Schematycznie tego typu konstrukcja ma postać:

background image

NOT NULL (brak wartości pustych)

Atrybut NOT NULL oznacza, że w danej kolumnie nie mogą znajdować się wartości puste, czyli że
każdy wiersz w tej kolumnie musi zawierać jakąś wartość. Brak definicji danych lub próba jawnego
zapisania wartości pustej (NULL) zakończy się niepowodzeniem.

Kolumna bez wartości pustych

AUTO_INCREMENT (automatyczne generowanie kolejnej wartości)

Atrybut AUTO_INCREMENT ma zastosowanie jedynie do kolumn, które przechowują wartości
całkowite. Jeżeli podczas wstawiania nowego wiersza jako wartość kolumny zostanie podana wartość
pusta NULL lub 0, będzie ona zamieniona na o jeden większą niż maksymalna wartość zapisana w tej
kolumnie. Innymi słowy, wartość takiej kolumny jest automatycznie zwiększana o 1 podczas
wstawiania nowego wiersza.

background image

Zadanie 1

Utwórz tabelę, która będzie zawierała dwie kolumny typu INTEGER, pierwszą o nazwie Id i drugą o
nazwie Znacznik.

Zadanie 2

Utwórz tabelę, która będzie zawierała kolumnę typu INTEGER przechowującą wyłącznie dodatnie
wartości z przedziału 0 – 65 535 i w której liczba wyświetlanych znaków będzie zawsze równa 5, a
wolne miejsca dla wartości krótszych niż 5 znaków będą wypełniane zerami.

Zadanie 3

Utwórz tabelę zawierającą kolumnę przechowującą wartości rzeczywiste pojedynczej precyzji.

Zadanie 4

Utwórz tabelę zawierającą kolumnę przechowującą wartości z separatorem dziesiętnym, z
szerokością wyświetlania określoną na sześć cyfr znaczących, z trzema miejscami po przecinku.

Zadanie 5

Utwórz tabelę zawierającą kolumnę przechowującą wartości określające jednocześnie datę i czas.

Zadanie 6

Utwórz tabelę, która będzie zawierała następujące kolumny:

Id — zawierającą identyfikator osoby,
Imię — przechowującą imiona (o długości nie większej niż 25 znaków),
Nazwisko — przechowującą nazwiska (o długości nie większej niż 35 znaków).

Zadanie 7

Utwórz tabelę zawierającą dwie kolumny — Id typu INTEGER oraz Nazwa typu VARCHAR. Pierwsza
kolumna powinna być kluczem głównym.

Zadanie 8

Utwórz tabelę, w której kolumny Id typu INTEGER oraz Nazwa typu VARCHAR tworzą klucz główny.


Wyszukiwarka

Podobne podstrony:
Podstawy MySQL'a
Kurs Podstawy MySQL id 254120
Podstawy MySQL'a
2009 02 Podstawy MySQL [Poczatkujacy]
Kurs Podstawy MySQL(1)
kurs podstaw mySQL komendy
Bazy danych i mysql od podstaw Nieznany (3)
Bazy Danych I Mysql Od Podstaw
PHP5, Apache i MySQL Od podstaw
Bazy danych i MySQL Od podstaw Nieznany (2)
MySQL Podstawy
MySQL Podstawy msqlpo
Bazy danych i mysql od podstaw Nieznany (3)
PHP5 Apache i MySQL Od podstaw phappo
PHP i MySQL Od podstaw Wydanie IV phmso4
PHP i MySQL Od podstaw Wydanie IV
Bazy danych i MySQL Od podstaw 2

więcej podobnych podstron