Hello there, visitor πŸ‘‹

Home | Blog | Garden | GitHub

Notatki sql :)

SQL notatki

β–ˆβ–‘β–ˆβ–‘β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–€β€ƒβ–‘β–‘β–ˆβ€ƒβ–„β–€β–ˆ
β–€β–„β–€β–„β–€β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–€β–„β€ƒβ–„β–ˆβ€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–ˆ

\s;
SHOW VARIABLES LIKE '%version%';

β–ˆβ–‘β–ˆβ€ƒβ–€β–ˆβ€ƒβ–ˆβ–„β–ˆβ€ƒβ–€β–ˆβ–€β€ƒβ–ˆβ–„β–€β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–‘β–ˆβ–‘β–ˆβ€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–„β–€
β–ˆβ–„β–ˆβ€ƒβ–ˆβ–„β€ƒβ–‘β–ˆβ–‘β€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–‘β–ˆβ€ƒβ–ˆβ–„β–ˆβ€ƒβ–€β–„β–€β–„β–€β€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–‘β–ˆ

mysql -u root -p // '-p' dawać jak jest ustawione hasło

CREATE <--OR REPLACE--> USER maks@localhost IDENTIFIED BY 'haslo';
GRANT ALL ON *.* TO maks <--IDENTIFIED BY 'haslo'-->;
//GRANT <przywileje np. USAGE, SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, DROP> ON <tabele np. baza.*> TO <uΕΌytkownik> IDENTIFIED BY <'haslo'>;
REVOKE ALL ON *.* FROM maks;
DELETE FROM user WHERE user='maks';
SELECT user FROM mysql.user; //pokazuje 
SELECT user();
DROP USER user;

β–ˆβ–‘β–ˆβ–‘β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–‘β–ˆβ–‘β–ˆβ€ƒβ–„β–€β–ˆβ€ƒβ–ˆβ–€β–„β€ƒβ–€β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–€β–€
β–€β–„β–€β–„β–€β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–€β–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–€β–„β–€β–„β–€β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–„β–€β€ƒβ–ˆβ–„β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–ˆβ–„

SHOW DATABASES;
CREATE DATABASE baza DEFAULT CHARACTER SET utf8 COLLATE utf8_polish_ci;
DROP DATABASE nieMoja;
USE baza;
SOURCE c:/BAZY/moja_baza.sql
SHOW TABLES;
DESCRIBE [tabela];

β–€β–ˆβ–€β€ƒβ–ˆβ–‘β–ˆβ–‘β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–€β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–€β–€β€ƒ β€ƒβ–€β–ˆβ–€β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–‘β–‘β€ƒβ–ˆ
β–‘β–ˆβ–‘β€ƒβ–€β–„β–€β–„β–€β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–„β€ƒβ–ˆβ–„β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–ˆβ–„β€ƒ β€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–„β€ƒβ–ˆ

CREATE TABLE [nazwa_tabeli]
(
	id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
	isbn CHAR(13) NOT NULL PRIMARY KEY,
	imie CHAR(25) NOT NULL,
	cena FLOAT(8,2),
	data DATE NOT NULL,
	ilosc TINYINT UNSIGNED,
	recenzja TEXT,
	czas TIME,
	PRIMARY KEY(kolumna_1, kolumna_2)	//alternatywny sposob deklaracji
);
//UNSIGNED
//NOT NULL
//AUTO_INCREMENT
//PRIMARY KEY

β–ˆβ–€β–€β€ƒβ–ˆβ–€β–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–‘β–‘β–ˆβ€ƒβ–„β–€β–ˆβ€ƒ β€ƒβ–€β–ˆβ–€β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–‘β–‘β€ƒβ–ˆ
β–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–€β€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒ β€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–„β€ƒβ–ˆ

ALTER TABLE [tabela] {..........}

ADD COLUMN [definicja_kolumny];

ADD CONSTRAINT [symbol] PRIMARY KEY (kolumna_1, ..., kolumna_N);
ADD CONSTRAINT [symbol] UNIQUE (kolumna_1, ..., kolumna_N);

ALTER COLUMN [kolumna] SET NOT NULL;
ALTER COLUMN [kolumna] DROP NOT NULL;
ALTER COLUMN [kolumna] SET DEFAULT ['wartoΕ›Δ‡'];
ALTER COLUMN [kolumna] DROP DEFAULT;

MODIFY COLUMN [kolumna] INT AUTO_INCREMENT;

DROP COLUMN [kolumna]
DROP CONSTRAINT [symbol];
DROP PRIMARY KEY;

CHANGE [nazwa_kolumny] [nowa_nazwa_kolumny] [typ_kolumny];
RENAME TO [nowa_nazwa_tabeli];

β–ˆβ–€β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–‘β–‘β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–€β–€β€ƒβ–€β–ˆβ–€
β–„β–ˆβ€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–„β–„β€ƒβ–‘β–ˆβ–‘

SELECT [kolumna_1, ..., kolumna_N] FROM [tabela];
SELECT * FROM [tabela];
SELECT * FROM [tabela] WHERE [kolumna]='X' // np. id='5', imie='marek'
SELECT * FROM USER;
SELECT * FROM USER WHERE user='resowian'; 
SELECT * FROM information_schema.user_privileges;

OPERATORY PORΓ“WNANIA DO 'WHERE':
=, <, >, <=, >=, !=, IS NOT NULL, IS NULL, BETWEEN, IN, NOT IN, LIKE, NOT LIKE

PRZYKŁADY:
SELECT * FROM [tabela] WHERE {..........};

wartosc>100.20
wartosc!=420.00 //wartoΕ›Δ‡ rΓ³ΕΌna od tej
adres IS NOT NULL //adres ma nie być pusty
choroby IS NULL //choroby ma być puste
cena BETWEEN 25.30 AND 90.20 //cena pomiΔ™dzy x a y
miejscowosc IN('Krasnystaw', 'Warszawa') //miejscowość ma być równe x lub y
miejscowosc NOT IN('Świdnik', 'Radom') //miejscowoΕ›Δ‡ ma nie byΔ‡ rΓ³wne x ani y
imie LIKE 'Ma%' //wyszukuje wszystkie imiona zaczynajΔ…ce siΔ™ na 'Ma-'
imie NOT LIKE 'Ma%' //wszystkie imiona oprΓ³cz tych na 'Ma-'

β–ˆβ€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ–€β–„β€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–„β–€β€ƒβ–ˆβ–€β€ƒβ–ˆβ–„β–ˆ
β–ˆβ€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–ˆβ–„β–€β€ƒβ–ˆβ–ˆβ–„β€ƒβ–ˆβ–‘β–ˆβ€ƒβ–„β–ˆβ€ƒβ–‘β–ˆβ–‘

CREATE <--UNIQUE--> INDEX [nazwa_indeksu] ON [nazwa_tabeli] (kolumny_skΕ‚adowe);

CREATE TABLE [nazwa_tabeli]
(
	[definicje kolumn],
	INDEX nazwa_indeksu_1 (kolumna_x),
	INDEX nazwa_indeksu_2 (kolumna_x, kolumna_y, ..., kolumna_z),
	...
	INDEX nazwa_indeksu_N (kolumna_x, kolumna_y, ..., kolumna_z)
);

DROP INDEX nazwa_indeksu;
DROP INDEX nazwa_indeksu ON nazwa_tabeli;

β–€β–ˆβ€ƒβ–„β–€β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–€β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–‘β–ˆβ–‘β–ˆβ€ƒβ–„β–€β–ˆβ€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–€β–€β€ƒ β€ƒβ–ˆβ–€β–„β€ƒβ–„β–€β–ˆβ€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–‘β–ˆ
β–ˆβ–„β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ€ƒβ–„β–ˆβ€ƒβ–‘β–ˆβ–‘β€ƒβ–€β–„β–€β–„β–€β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–ˆβ€ƒβ–ˆβ–ˆβ–„β€ƒ β€ƒβ–ˆβ–„β–€β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–€β–ˆ

SPOSΓ“B 1:

INSERT INTO nazwa_tabeli <--(kolumna1, kolumna2, kolumna3...)--> VALUES (wartosc1, wartosc2, wartosc3...);
//nazwy kolumn sΔ… opcjonalne, ---czyli---
INSERT INTO klienci VALUES(NULL, 'Anna Kowalska', 'PiΕ‚sudskiego 24/5', 'Krasnystaw'); //klient_id, nazwisko adres, miejscowosc

SPOSΓ“B 2:

INSERT INTO klienci SET adres='Lwowska 10/22', nazwisko='MirosΕ‚aw MrΓ³z', miejscowosc='Lublin';

PRZYKŁADY:

INSERT INTO klienci VALUES
 (NULL, 'Jan PrΔ™dki', 'Kwiatowa 8', 'Zabrze'),
 (NULL, 'JΓ³zef KoΕ„', 'Zatybrze 23', 'Rzym'),
 (NULL, 'Ferdynand Kiepski', 'Piwna 13/13', 'WrocΕ‚aw');

INSERT INTO zamowienia VALUES
 (NULL, 5, 199.80, '2014-10-11'),
 (NULL, 1, 210.05, '2014-10-12'),
 (NULL, 2, 22.10, '2014-10-12'),
 (NULL, 5, 120.34, '2014-10-14'),
 (NULL, 6, 180.40, '2014-10-19'),
 (NULL, 7, 246.90, '2014-10-21'),
 (NULL, 8, 66.30, '2014-11-01'),
 (NULL, 9, 79.80, '2014-11-10'),
 (NULL, 7, 99.90, '2014-11-10'),
 (NULL, 10, 90.20, '2014-11-15');

INSERT INTO ksiazki_zamowione VALUES
 (1, '87-7361-784-1', 2),
 (2, '87-7361-784-1', 1),
 (2, '83-86969-49-0', 1),
 (3, '83-246-0375-1', 1),
 (4, '83-7197-034-X', 1),
 (5, '83-7197-709-3', 2),
 (6, '978-83-246-3791-1', 1),
 (6, '83-86969-49-0', 2),
 (7, '83-246-0375-1', 3),
 (8, '83-7361-391-1', 3),
 (9, '87-7361-784-1', 1),
 (10, '83-7197-709-3', 1);

INSERT INTO recenzje_ksiazek VALUES
 ('87-7361-784-1','Bardzo profesjonalna książka opisująca jak tworzyć dynamiczne strony WWW, stosując PHP oraz MySQL'),
 ('83-86969-49-0', 'KsiΔ…ΕΌka zawiera kompendium wiedzy na temat [...] jak rΓ³wniez profesjonalistΓ³w'),
 ('83-246-0375-1', 'Ciekawa ksiΔ…ΕΌka dla interesujΔ…cych siΔ™ budowΔ… i dziaΕ‚aniem sieci');

β–ˆβ–€β–„β–€β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–€β–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ€ƒβ–ˆβ–„β–€β€ƒβ–„β–€β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–‘β–‘β–ˆβ€ƒβ–„β–€β–ˆβ€ƒ β€ƒβ–ˆβ–€β–„β€ƒβ–„β–€β–ˆβ€ƒβ–ˆβ–„β–‘β–ˆβ€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–€β€ƒβ–ˆβ–‘β–ˆ
β–ˆβ–‘β–€β–‘β–ˆβ€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–„β–€β€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–€β–‘β€ƒβ–ˆβ€ƒβ–ˆβ–‘β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–„β–ˆβ€ƒβ–ˆβ–€β–ˆβ€ƒ β€ƒβ–ˆβ–„β–€β€ƒβ–ˆβ–€β–ˆβ€ƒβ–ˆβ–‘β–€β–ˆβ€ƒβ–‘β–ˆβ–‘β€ƒβ–ˆβ–„β–„β€ƒβ–ˆβ–€β–ˆ

UPDATE [tabela] SET [kolumna1]=[wyraΕΌenie1], [kolumna2]=[wyraΕΌenie2] <--WHERE [warunek] ORDER BY [kryteria_porzΔ…dkowania] LIMIT [iloΕ›Δ‡]-->;

PRZYKŁADY:

UPDATE ksiazki SET cena=cena*1.25;
UPDATE klienci SET adres='Zmieniona 12' WHERE klient_id=5;

ALTER TABLE [tabela] [zmiana1], [zmiana2];

PRZYKŁADY:

ALTER TABLE ksiazki MODIFY cena FLOAT(5,2);
--po czym moΕΌna--
UPDATE ksiazki SET cena=120.34 WHERE isbn='83-7898-123-X';

ALTER TABLE zamowienia ADD podatek FLOAT(4,2) AFTER wartosc; //AFTER X - umiejscowienie kolumny
ALTER TABLE zamowienia DROP podatek;
UPDATE klienci SET nazwisko='GΕ‚owacki PaweΕ‚' adres='PokΔ…tna 9' miejscowosc='ZaΕ›cianek' WHERE klient_id=5;
DELETE FROM zamowienia WHERE zamowienia_id BETWEEN 4 AND 8;