Kako započeti s programom mysql. Osnove MySQL-a

Međutim, to nije dovoljno za izradu čak i najjednostavnije web stranice s registracijskim obrascem. Ovo zahtijeva VJEŠTINE WEB PROGRAMIRANJA. Idemo prema ovom dijelu uzbudljivog putovanja.

Frontend i Backend

Programiranje se može podijeliti u 2 dijela: Frontend i Backend.

Razvoj frontenda- Ovo izgled stranici, rezultat ovog rada korisnici vide na ekranu monitora.

Pozadina- ovo je interni dio stranice, vidite rezultat ovog rada kroz frontend razvoj. Kada postavite bilo koji zahtjev: u pretrazi, kliknete na aktivnu poveznicu, gumb itd., gotovo trenutno dobivate rezultat na ekranu.

Ovaj put od vašeg zahtjeva do primanja rezultata je nevidljiva strana rada bilo koje stranice: logika svih zahtjeva da proizvedu traženi rezultat.



Navedimo analogiju s mentalnim računanjem: zbrojite 32 i 47. Nitko ne vidi vaš misaoni proces, on je unutar vas. Vi koristite vlastitu logiku izračuna, a stranica također koristi pozadinsku razvojnu logiku za dovršenje zadatka.


Osnove pozadinskog razvoja - PHP/MySQL

PHP je programski jezik za izradu web stranica.

Web stranica(web stranica) - zbirka HTML stranice i drugi elektronički dokumenti, zajedničkog dizajna, međusobno povezanih hipervezama i smještenih na istom nazivu domene.

PHP se dobro integrira u izgled HTML jezika koji već poznajete.

PHP se koristi kada trebate pohraniti neke informacije na poslužitelj.

Jezik PHP odgovori ZA LOGIKU ponašanje stranice, ali samo poznavanje jezika neće vas učiniti programerom, morate naučiti IZGRADITE ALGORITME.

Na primjer, gradimo logiku na takav način da samo administrator možete urediti post na blogu ili pregledati izvješće o prodaji u online trgovini; te radnje nisu dostupne drugim korisnicima.

Svaki jezik je jednostavan ako ga naučite razumjeti!

Naš zadatak je da vas naučimo ČITAJTE kod drugih ljudi i STVARAJTE vlastiti.Što to znači?
Kada vidite kod već napisanog programa, čitajući ga, lako možete zamisliti što će se dogoditi na ekranu monitora kao rezultat logike algoritama.

Da biste naučili web programiranje, shvatite koje građevinske materijale imate za izradu web stranice. U ovoj fazi, ovo je PHP programski jezik i baza MySQL podaci.

Za razumijevanje jezika dovoljno je razumjeti sintaksu, osnovne definicije i pravila primjene.

Vaši glavni građevinski materijali:

Varijable i njihove vrste,

Konstante, operatori,

Nizovi i rad s njima,

Funkcije i stvaranje vlastitih funkcija,

ciklusi,

Slanje i primanje podataka iz HTML obrazaca (GET, POST),

Objektno orijentirano programiranje (Klase, enkapsulacija, polimorfizam, nasljeđivanje, sučelja)

Osnove sigurnosti web stranice



Važno je znati KAKO zaštititi svoju kreaciju. Naučite kompetentno pisati programe u PHP-u tako da vjerojatnost da će vaša stranica biti hakirana pada na nulu.

Prijeđimo na MySQL/MariaDB baze podataka

Gotovo svaka web stranica ima bazu podataka. Ovo je repozitorij u kojem se prikupljaju i strukturiraju podaci korišteni na stranici. Na primjer, ako je ovo blog, tada baza podataka pohranjuje: teme članaka, same članke, imena autora, datum objave, naslov rubrike, komentare itd.

Jeste li zainteresirani za statistiku svoje web stranice? Koliko posjeta, vremena provedenog na stranici, broja novih korisnika, koliko je bilo prodaja itd. Ovo je analitički podatak i također se pohranjuje u bazi podataka.

MySQL/MariaDB je jedan od najpopularnijih i najrasprostranjenijih DBMS (sustav za upravljanje bazama podataka) na Internetu. Većina podataka web stranice pohranjena je u MySQL/MariaDB.

SQL- upitni jezik baze podataka koji vam omogućuje odabir podataka iz tablica, sortiranje podataka i sažimanje numeričkih podataka pohranjenih u ćelijama tablice. Tablice baze podataka slične su Excel tablicama, ali SQL vam omogućuje rad s podacima na prikladan način.


Potrebno je naučiti raditi s bazama podataka.
Osnovne operacije:
- unos i izlaz podataka,
- sortiranje,
- Ažuriraj,
- brisanje.


Tijekom procesa obuke upoznajete se sa sustavom administracije stranice i dizajnirate svoju prvu strukturu tablice baze podataka.

Sprijateljite se s njima u svojim mrežnim aktivnostima izgradnje web stranica.

Programi su napisani u PHP-u za: registraciju i autorizaciju korisnika, pretraživanje web stranica, možete kreirati vlastite motore, računalni robot, automatizirati ponavljajuće algoritme, kreirati online trgovinu itd.

Puno je slobodnih radnih mjesta za posao PHP programera! PHP je jedan od najčešćih web programskih jezika! Odnosno, znajući samo jedan programski jezik, možete implementirati tisuće svih vrsta projekata, kako za sebe tako i za druge ljude, za dobar novac!

PHP je vrlo jednostavan i to će biti vrlo važno za one koji nikad prije nisu programirali! Jednom kada naučite PHP, lakše ćete naučiti druge programske jezike.


Tajna stabilnog kretanja naprijed je napraviti prvi korak. Tajna prvog koraka je rastaviti složene zadatke na jednostavne i početi s prvim.

Mark Twain

Budite na svom maksimumu!Pridružite se webu!
beONmax tim

Nema potrebe čekati da se grupa popuni ili da dođe datum početka tečaja - u beONmaxu s treninzima krećete odmah!

Od autora: Jesu li te zvali cajkom? Pa, ova stvar se može popraviti! Svaki je samovar nekada bio čajnik! Ili je svaki profesionalac jednom bio samovar? Ne, opet nešto nije u redu! Općenito, MySQL je za početnike.

Zašto lutkama treba MySQL?

Ako ozbiljno planirate svoj život povezati s Internetom, tada ćete već pri prvim koracima na "webu" naići na ovaj DBMS. MySQL se lako može nazvati sustavom za upravljanje bazom podataka "savim internetom". Niti jedan više ili manje ozbiljan resurs ne može bez njega; prisutan je u administratorskoj ploči svakog hostinga. I većina popularnih CMS-a, pa čak i "domaći" motori izgrađeni su uz njegovo sudjelovanje.

Općenito, ne možete bez ove platforme. Ali za proučavanje će vam također trebati pravi pristup, pravi alati, i što je najvažnije želja i strpljenje. Nadam se da imate dovoljno zadnjih sastojaka. I budite spremni da vam mozak prokuha i para iz glave izlije kao iz pravog kotla

Ali MySQL je toliko težak za glupane samo ako ga počnete učiti na pogrešan način. Vi i ja nećemo napraviti takvu pogrešku i počet ćemo naše upoznavanje s ovom tehnologijom od samog početka.

Osnovni koncepti

Prvo, prođimo kroz osnovne pojmove koje ćemo spomenuti u ovoj publikaciji:

Baza podataka (DB) je glavna sastavna jedinica DBMS-a. Baza podataka uključuje tablice koje se sastoje od stupaca i zapisa (redaka). Ćelije formirane na raskrižju sadrže strukturirane podatke određenog tipa.

DBMS (sustav za upravljanje bazom podataka) je skup svih programskih modula za administraciju baze podataka.

SQL je strukturirani upitni jezik s kojim programer "komunicira" s DBMS jezgrom (poslužiteljem). Kao i svaki programski jezik, SQL ima vlastitu sintaksu, skup naredbi i operatora te podržane vrste podataka.

Mislim da nam je teoretsko znanje dovoljno za početak. Rupe koje nedostaju u teoriji "obojit ćemo" praksom. Sada preostaje samo odabrati pravi softverski alat.

Odabir pravog alata

Pretražujući cijeli niz MySQL ljuski za početnike, shvatio sam da jednostavno ne postoje. svi softverski proizvodi Da biste administrirali DBMS, već morate imati instalirani poslužitelj DB. Općenito, ponovno sam odlučio ne izmišljati "skuter" i odlučio se za domaći Denwer paket. Možete ga preuzeti na službenoj stranici.

Već uključuje sve komponente DBMS-a, omogućujući početniku da započne praktično upoznavanje s MySQL-om odmah nakon jednostavne i jednostavne instalacije. Osim toga, Denwer uključuje još nekoliko alata potrebnih za programera početnika: lokalni poslužitelj,PHP.

Prvi koraci

Neću opisivati ​​proces instalacije "gospodskog" seta, jer se tamo sve događa automatski. Nakon pokretanja instalacije, imate vremena samo pritisnuti potrebne tipke. Upravo ono što trebate u verziji MySQL for dummies.

Kada je proces instalacije završen, pokrenite lokalni poslužitelj, pričekajte nekoliko sekundi. Nakon toga, javite se adresna traka preglednik localhost.

Na stranici "Ura, radi!" slijedite jednu od poveznica prikazanih na slici. Nakon čega ćete biti preusmjereni na phpMyAdmin – ljusku za administriranje baza podataka.

Slijedeći poveznicu http://downloads.mysql.com/docs/world.sql.zip, preuzet ćete primjer testne baze podataka sa službene MySQL web stranice. Ponovno idite na phpMyAdmin, u glavnom izborniku na vrhu idite na karticu "Uvoz". U prozoru Import to Current, u prvom odjeljku (File to Import), postavite vrijednost na Browse your computer.

U prozoru Explorer odaberite arhivu s preuzetom bazom podataka primjera. Ne zaboravite kliknuti "U redu" na dnu glavnog prozora.

Savjetujem vam da za sada ne mijenjate navedene vrijednosti parametara. To može dovesti do netočnog prikaza uvezenih izvornih podataka. Ako sustav phpMyAdmin generira grešku da ne može prepoznati algoritam kompresije baze podataka, raspakirajte ga i ponovite cijeli proces uvoza ispočetka.

Ako je sve prošlo u redu, tada će se na vrhu pojaviti poruka programa da je uvoz bio uspješan, a lijevo u popisu baza će biti još jedna (word).

Pogledajmo njegovu strukturu iznutra kako biste mogli jasnije zamisliti s čime se morate nositi.

Kliknite na naziv MySQL baze podataka za početnike. Ispod njega će se prikazati popis tablica od kojih se sastoji. Kliknite na jedan od njih. Zatim idite na gornji izbornik"Struktura". U glavnom radno područje Prikazat će se struktura tablice: nazivi svih stupaca, tipovi podataka i svi atributi.

SQL - Lekcija 1. Izrada baze podataka i tablica

Dakle, instalirali ste MySQL, a mi počinjemo svladavati SQL jezik. U lekciji 3 o osnovama baze podataka stvorili smo konceptualni model male baze podataka za forum. Vrijeme je da ga implementiramo u MySQL DBMS.

Da biste to učinili, prije svega trebate pokrenuti MySQL poslužitelj. Idemo izbornik sustava Start - Programi - MySQL - MySQL Server 5.1 - MySQL Command Line Client. Otvorit će se prozor u kojem se traži da unesete lozinku.

Pritisnite Enter na tipkovnici ako niste naveli lozinku prilikom postavljanja poslužitelja ili navedite lozinku ako ste je naveli. Čekamo mysql> pozivnicu.

Moramo napraviti bazu podataka koju ćemo nazvati forum. Za to postoji operator u SQL-u stvoriti bazu podataka

Stvaranje baze podataka database_name;


Maksimalna duljina naziva baze podataka je 64 znaka i može uključivati ​​slova, brojeve, znak "_" i znak "$". Ime može započeti brojem, ali se ne smije u potpunosti sastojati od brojeva. Svaki upit baze podataka završava točkom i zarezom (taj se znak naziva razdjelnik). Nakon što primi zahtjev, poslužitelj ga izvršava i, ako je uspješan, prikazuje poruku "Query OK ..."

Dakle, stvorimo bazu podataka foruma:

Pritisnite Enter i vidite odgovor "Query OK...", što znači da je baza podataka stvorena:

Tako je jednostavno. Sada moramo stvoriti 3 tablice u ovoj bazi podataka: teme, korisnici i poruke. Ali prije nego što to učinimo, moramo reći poslužitelju u kojoj bazi podataka stvaramo tablice, tj. trebate odabrati bazu podataka s kojom ćete raditi. U tu svrhu koristi se operator koristiti. Sintaksa za odabir baze podataka za rad je sljedeća:

Koristite naziv_baze podataka;


Dakle, odaberimo našu bazu podataka foruma za rad:

Pritisnite Enter i pogledajte odgovor "Baza podataka promijenjena" - baza podataka je odabrana.

Morate odabrati bazu podataka u svakoj sesiji rada s MySQL-om.

Za izradu tablica u SQL-u postoji operator stvoriti tablicu. Stvaranje baze podataka ima sljedeću sintaksu:

Napravi tablicu table_name (prvi_naziv_stupca tip, drugi_naziv_stupca tip, ..., zadnji_naziv_stupca tip);


Zahtjevi za nazive tablica i stupaca isti su kao i za nazive baza podataka. Povezano sa svakim stupcem određena vrsta podaci koji ograničavaju vrstu informacija koje se mogu pohraniti u stupac (na primjer, sprječavanje unosa slova u brojčano polje). MySQL podržava nekoliko tipova podataka: numerički, string, kalendar i poseban tip NULL, koji označava da nema informacija. O tipovima podataka ćemo detaljno govoriti u sljedećoj lekciji, ali za sada se vratimo našim tablicama. U njima imamo samo dvije vrste podataka - cjelobrojne vrijednosti (int) i nizove (tekst). Dakle, kreirajmo prvu tablicu - Teme:

Pritisnite Enter - kreirana je tablica:

Dakle, napravili smo tablicu tema s tri stupca:
id_topic int - ID teme (cjelobrojna vrijednost),
topic_name text - naziv teme (string),
id_author int - ID autora (cjelobrojna vrijednost).

Kreirajmo na sličan način preostale dvije tablice - korisnici (korisnici) i postovi (poruke):

Dakle, napravili smo bazu podataka foruma iu njoj se nalaze tri tablice. Sada se toga sjećamo, ali ako je naša baza podataka jako velika, tada je jednostavno nemoguće zapamtiti nazive svih tablica i stupaca. Stoga moramo moći vidjeti koje baze podataka imamo, koje su tablice prisutne u njima i koje stupce te tablice sadrže. Postoji nekoliko operatora za to u SQL-u:

prikazati baze podataka- prikazati sve dostupne baze podataka,

pokazati tablice- prikazati popis tablica u trenutnoj bazi podataka (najprije je morate odabrati pomoću operatora koristiti),

opišite naziv_tablice- prikazati opis stupaca navedene tablice.

Pokušajmo. Pogledajmo sve dostupne baze podataka (vi za sada imate samo jednu - forum, ja ih imam 30 i sve su navedene u stupcu):

Sada pogledajmo popis tablica u bazi podataka foruma (da biste to učinili, prvo ga morate odabrati), ne zaboravite pritisnuti Enter nakon svakog zahtjeva:

U odgovoru vidimo nazive naše tri tablice. Sada pogledajmo opis stupaca, na primjer, tablicu tema:

Prva dva stupca su nam poznata - ovo je ime i vrsta podataka, a vrijednosti ostalih još moramo saznati. Ali prvo ćemo ipak saznati koje vrste podataka postoje, koje i kada koristiti.

A danas ćemo pogledati posljednjeg operatera - pad, omogućuje vam brisanje tablica i baza podataka. Na primjer, izbrišite tablicu tema. Budući da smo prije dva koraka odabrali bazu podataka foruma za rad, sada nema potrebe za odabirom, možete jednostavno napisati:

Ispusti tablicu table_name;


i pritisnite Enter.

Sada ponovno pogledajmo popis tablica u našoj bazi podataka:

Naša je tablica doista izbrisana. Idemo sad izbrisati samu bazu podataka foruma (izbriši je, nemoj biti žao, morat će se još prepravljati). Da bismo to učinili, pišemo:

Ispusti bazu podataka database_name;


i pritisnite Enter.

I provjerite ovo postavljanjem upita svim dostupnim bazama podataka:

Vi vjerojatno nemate niti jednu bazu podataka; ja ih imam 29 umjesto 30.

To je sve za danas. Naučili smo kreirati baze podataka i tablice, brisati ih i dohvaćati podatke o postojećim bazama podataka, tablicama i njihovim opisima.

U MySQLu početak rada uključuje prvo prijavu, stvaranje baze podataka i tablica te popunjavanje tablica podacima. U početku se informacije mogu dodati pokretanjem upita poslužitelju baze podataka ili, na primjer, uvozom podataka iz tekstualnih dokumenata. Tako će se podaci iz dokumenata učitavati u tablice NEKRETNINA I NAROD.

Ovaj materijal je nastavak.

MySQL početak rada i uvoz podataka

mysql -h domaćin -u korisnik -p

Upišite lozinku: ********

Također možete odmah unijeti svoju lozinku

mysql -h host -u korisnik -pPASSWORD

Ne smije biti razmaka između prekidača -p i same lozinke, inače će se lozinka percipirati kao naziv baze podataka. Ova opcija je loša jer će lozinka ostati u povijesti i moći će se vidjeti u budućnosti.

Osnove MySQL-a

Svaki zahtjev (osim KORISTITI, PRESTATI i još nekoliko njih) moraju završavati točkom i zarezom. Upit se može rasporediti u nekoliko redaka i izvršit će se tek nakon unosa točke-zareza

IZABERI
-> *
-> OD
-> gebwoocommerce_api_ključevi
-> ;
Prazan set (0,01 s)

MariaDB >

Zahtjev možete poništiti nakon unosa nekoliko redaka izvršavanjem \c

IZABERI
-> *
-> OD
-> gebwoocommerce_api_ključevi
-> \c

Po načinu na koji MySQL prompt izgleda, možete razumjeti status zahtjeva i što točno poslužitelj očekuje od administratora

(ili varijacije: mysql > MariaDB > ) Čeka se unos

2) ->

Očekuje se da će sljedeći niz upita biti dug nekoliko redaka

3) ">

Očekuje se da će sljedeći niz upita biti dug nekoliko redaka ako upit počinje jednim navodnikom

4) «>

Očekuje se da će sljedeći niz upita biti dug nekoliko redaka ako upit počinje dvostrukim navodnicima

Očekuje se da će sljedeći niz upita biti dug nekoliko redaka ako upit počinje povratnom kvačicom (“`”)
6) /*>

Očekuje se da će sljedeći redak upita biti dug nekoliko redaka ako upit počinje oznakom komentara /*

Stvaranje MySQL baze podataka i njeno popunjavanje podacima

Nije preporučljivo raditi kao root korisnik najbolje rješenje je

Na primjer, dodajmo user user (u testnom okruženju također možete raditi kao root). Nakon prijave u MySQL konzolu kreiramo bazu i tablice

CREATE DATABASE REAL_ESTATE_AGENCY;

Upit u redu, 1 redak zahvaćen (0,00 s)

+——————————+
| Baza podataka |
+——————————+
| informacijska_shema |
| mysql |
| shema_izvedbe |
| AGENCIJA ZA NEKRETNINE |
+——————————+
4 reda u setu (0,03 s)

Promjena baze podataka

CREATE TABLE REAL_ESTATE (tip VARCHAR(20), grad VARCHAR(20), površina INT, okrug VARCHAR(20), ulica VARCHAR(20), iznajmljivanjeprodaja VARCHAR(20), PRICE VARCHAR(20));

CREATE TABLE PEOPLE (ime VARCHAR(20), profesija VARCHAR(20), dob INT, grad VARCHAR(20), okrug VARCHAR(20), iznajmljivačprodaja VARCHAR(20), CIJENA VARCHAR (20));

Upit OK, zahvaćeno 0 redaka (0,01 s)

+——————————+
| Stolovi_u_AGENCIJI_NEKRETNINE |
+——————————+
| LJUDI |
| NEKRETNINE |
+——————————+
2 reda u setu (0,00 s)

Informacije o strukturi tablice i svim postojećim stupcima mogu se dobiti izvođenjem naredbe DESCRIBE

+————+————-+——+——+———+——-+
| Polje | Upišite | Null | Ključ | Zadano | Ekstra |
+————+————-+——+——+———+——-+
| vrsta | varchar(20) | DA | | NULL | |
| grad| varchar(20) | DA | | NULL | |
| podni prostor | int(11) | DA | | NULL | |
| okrug | varchar(20) | DA | | NULL | |
| ulica | varchar(20) | DA | | NULL | |,

| iznajmljivanje | varchar(20) | DA | | NULL | |
| CIJENA | varchar(20) | DA | | NULL | |
+————+————-+——+——+———+——-+
7 redaka u nizu (0,00 s)

Cjelokupni sadržaj tablice možete prikazati pomoću najopćenitijeg SELECT upita (ovaj tip upita se najčešće koristi i o njemu ćemo detaljnije govoriti kasnije)

SELECT * IZ NEKRETNINA;

Prazan skup (0,00 s)

Sada nema podataka - popunimo tablice. To se može učiniti izvođenjem AŽURIRANJA sa potrebnim vrijednostima ili učitavanjem podataka iz tekstualnih dokumenata. U početnoj fazi preuzimanja, druga metoda je mnogo prikladnija. Iskoristimo ga.

Učitavanje podataka u MySQL tablice

Podatke spremamo u /tmp/real_estate.txt - vrijednosti u stupcima odvojene su tabulatorima. Nakon toga učitavamo podatke u konzolu tako da prvo selektiramo tablicu.

Može doći do sljedeće pogreške.

POGREŠKA 1148 (42000): Korištena naredba nije dopuštena s ovom MySQL verzijom

Ako se pojavi greška u MySQL-u morate se povezati s opcijom --local-infile=1:

mysql --local-infile=1 -u root -p

UČITAJ PODATKE LOKALNE INFILE "/tmp/real_estate.txt" U TABLICU REAL_ESTATE;

Upit OK, zahvaćeno 13 redaka (0,00 s)
Zapisi: 13 Izbrisano: 0 Preskočeno: 0 Upozorenja: 0

SELECT rezultati sada izgledaju drugačije:

SELECT * IZ NEKRETNINA;


Ako vam je za neki stupac i redak potrebna vrijednost NULL tekstualni dokument mora biti predstavljen kao \N. U MySQL-u početak rada s bazama podataka i tablicama izgleda ovako. Zatim, pogledajmo osnove korištenja.