Osnove rada sa phpMyAdmin-om. MySQL strani ključevi i njihova konfiguracija u phpMyAdmin Phpmyadmin kreiraju redove u tabeli

Posljednje ažuriranje: 22.12.2017

Obično se baze podataka koriste kao skladište podataka. PHP vam omogućava da koristite različite sisteme za upravljanje bazama podataka, ali danas je najpopularniji u kombinaciji sa PHP-om MySQL. MySQL predstavlja besplatno softver, koji vam omogućava interakciju s bazama podataka pomoću SQL naredbi. Proces instaliranja i konfiguracije MySQL-a je već razmotren.

Da bi nam olakšali rad sa MySQL bazama podataka, hajde da instaliramo poseban skup phpMyAdmin skripti. phpMyAdmin pruža intuitivan web interfejs za upravljanje MySQL bazama podataka. Koristeći ovaj alat, mnogo je lakše raditi sa bazama podataka nego upravljati MySQL-om preko konzole.

Da biste instalirali phpMyAdmin, preuzmite arhivu i raspakujte je u fasciklu C:\localhost gdje su dokumenti za php. Preimenujmo raspakovanu fasciklu u phpMyAdmin radi kratkoće.

U raspakovanom direktoriju phpMyAdmin kreirajte datoteku config.inc.php sa sljedećim sadržajem:

A da bismo bili sigurni da je sve ispravno konfigurisano, u pretraživaču idemo na phpMyAdmin, na primjer, http://localhost:8080/phpmyadmin:

U lijevoj koloni možete vidjeti sve dostupne baze podataka na MySQL serveru. Čak i ako još niste kreirali nijednu bazu podataka, server već ima skup zadanih baza podataka.

Desna strana phpMyAdmin interfejsa sadrži osnovne alate za upravljanje bazom podataka, kao i razne informacije o konfiguraciji.

Kreiranje MySQL baze podataka u phpMyAdmin

Za razmjenu podataka sa MySQL serverom (snimanje, mijenjanje, brisanje, preuzimanje podataka), prirodno nam je potrebna baza podataka. Bazu podataka možemo kreirati iz MySQL konzole, kao i iz phpMyAdmin vizuelnog interfejsa.

Otvorimo phpMyAdmin interfejs. Idemo na karticu Baze podataka. Ispod etikete Kreirajte bazu podataka Unesite neko ime za novu bazu podataka, na primjer, compstore i kliknite na dugme "Kreiraj".

Nakon toga ćemo dobiti poruku o uspješnom kreiranju nove baze podataka i ona će biti dodana na liste baza podataka.

Nova baza podataka je i dalje prazna i ne sadrži ništa. Dodajmo mu tabelu koja će pohraniti podatke. Da biste to učinili, kliknite na naziv baze podataka i bit ćemo odvedeni na karticu „Struktura“, gdje će nam biti ponuđene opcije za novu tablicu. U polje "Naziv" unesite naziv nove tabele. Neka tabela pohranjuje podatke o modelima pametnih telefona, pa unesite naziv "telefoni", a kao broj kolona unesite broj 3:

Da biste kreirali tabelu, kliknite na dugme „Prosledi“. Nakon toga, imat ćemo skup ćelija za postavljanje parametara stupca. Naznačimo redom za nazive kolona: id, ime, kompanija. Kao tip, specificiraćemo tip INT za kolone id, a tip VARCHAR za stupce imena i kompanije. Za kolone imena i kompanije, u polje "Dužina/Vrijednosti" unesite broj 200 - to će označavati maksimalnu dužinu reda u znakovima. Također, za kolonu id, naznačite PRIMARY u polju “Index” i stavite kvačicu u polje “A_I” (AutoIncrement):

Dakle, tabela će imati kolone za jedinstveni ID, naziv telefona i naziv proizvođača. Zatim kliknite na dugme “Sačuvaj” ispod.

Nakon kreiranja tabele, možemo videti tabelu i njene kolone u koloni baze podataka:

Ovo nije jedini način za kreiranje tabela u phpMyAdmin-u jer ovdje možemo upravljati bazom podataka koristeći SQL upiti. Dakle, odaberite našu bazu podataka na listi baza podataka i idite na karticu “SQL”. Prikazuje polje za unos naredbe u jeziku SQL upita. Unesimo sljedeću naredbu u njega:

CREATE Table phones1 (id INT NOT NULL AUTO_INCREMENT PRIMARNI KLJUČ, ime VARCHAR(200) NOT NULL, kompanija VARCHAR(200) NOT NULL)

Ovo je standardna naredba za kreiranje SQL tablice. Nakon ključnih riječi CREATE Table dolazi naziv tablice koja se kreira, a zatim definicije stupaca u zagradama, odvojene zarezima.

Svaka definicija stupca sadrži ime stupca, njegov tip i niz dodatnih vrijednosti. Na primjer, definicija id kolone (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ukazuje na ime kolone, tip je INT, kao i da kolona mora imati vrijednost - NOT NULL, da će se njena vrijednost automatski povećati za jedan sa dodatkom novog objekta - AUTO_INCREMENT, i da igra ulogu primarnog ključa - PRIMARY KEY.

Općenito, tablica kreirana na ovaj način bit će ekvivalentna onoj ranije kreiranoj. Kliknite na dugme Prosledi i druga tabela, telefoni1, biće kreirana.

U ovom članku ću vas naučiti upravljati tabelama u PHPMyAdmin, odnosno kreirati, uređivati ​​i brisati tabele u bazi podataka. Ovaj članak je vrlo važan i svakako ga trebate proučiti.

Počnimo sa kreiranje tabele u PHPMyAdmin:

Ovdje se ima o čemu pričati. Počnimo s postavkama za polja tabele:

  • Ime, mislim da možete pitati. Jedina stvar je da ne naletite na rezerviranu riječ. To jest, ne možete dati polju, na primjer, takvo ime " index".
  • Tip. Tipovi polja su detaljno razmotreni u ovom članku: tako da neću ništa dodavati.
  • Dužine/Vrijednosti. Ovdje možete odrediti granične vrijednosti (dužine) varijabli. Na primjer, često koristim ovu priliku da uštedim resurse. Na primjer, za lozinku sam postavio tip VARCHAR a maksimalan broj znakova je 32 . Dok, prema zadanim postavkama, VARCHAR omogućava skladištenje do 255 karaktera.
  • Kodiranje. Naravno, ova postavka je relevantna samo za tipove stringova. Ako ćete u ovo polje pohraniti nizove samo ruskog i latiničnog pisma, koristite Ćirilično pismo (cp1251_general_ci), i ako možete pohraniti druge znakove, onda koristite unikod (utf8_general_ci).
  • Atributi. Odnosi se samo na brojeve. Ako je vaš broj očigledno pozitivan, tada omogućite opciju " NEPOTPISAN", što će proširiti pozitivan raspon vrijednosti odabranog tipa. Postoji i opcija " NEPOTPISANI ZEROFILL", koji se rijetko koristi, ali radi sljedeće: popunjava sve neiskorištene bitove visokog reda nulama. To jest, recimo da imate broj 4 , međutim, bit će pohranjeni: " 000000004 ", gdje je broj nula određen slobodnim znamenkama odabranog tipa.
  • Zero. Ova opcija vam omogućava da omogućite vrijednost " null". Zapamtite: " null" - nije 0 , a ne prazan niz. Ovo je prazan objekat, odnosno ništa!
  • Default. Korisna opcija koja vam omogućava da postavite zadanu vrijednost polja.
  • Dodatno. Omogućava vam da postavite " auto_increment". Ovo je veoma važna karakteristika koju ćete uključiti, mislim, u svaku tabelu. Ova opcija vam omogućava da dodate novi ulaz automatski povećava za 1 vrijednost polja. Idealno za ID (jedinstveni identifikator), koji mora biti jedinstven za svaki unos. A kako ne biste razmišljali o jedinstvenosti ovog polja, samo omogućite opciju " auto_increment".
  • Slijede radio prekidači:
    • Primarni ključ. Obično je ovaj ključ dodijeljen polju ID. Ovaj ključ znači da je vrijednost polja jedinstvena za cijelu tablicu; štaviše, indeks se kreira na ovom polju. O tome šta je indeks i zašto je potreban govorit ćemo u jednom od sljedećih članaka.
    • Indeks. Zapravo, da li da kreirate indeks za ovo polje.
    • Jedinstveno. Ako postavite ovu opciju, vrijednost ovog polja mora biti jedinstvena.
    • I potvrdni okvir FullText" znači da li treba kreirati indeks punog teksta ili ne.
  • Komentari. Ovo polje možete popuniti po svom nahođenju.
  • MIME tip. Ovo polje mora biti popunjeno ako imate neku posebnu vrijednost pohranjenu u polju, na primjer, sliku. Po pravilu se stavlja " auto-detect".
  • Transformacije pretraživača. Ovo neću opisivati, jer se koristi izuzetno rijetko. Ali ako želite, možete to pročitati u PHPMyAdmin, o tome je jako dobro napisano, i neće biti teško shvatiti.
  • Opcije transformacije pretraživača. Ovdje možete postaviti parametre za transformaciju, ako ih koristite.

Postavke tablice su mnogo jednostavnije:

  • Komentar na tabeli. Možete ga popuniti, ili ne možete ništa napisati.
  • Tip stola:
    • MyISAM. Najpopularniji tip tabele u MySQL, i pogodan je za većinu zadataka.
    • Hrpa. Posebnost ove tablice je u tome što je pohranjena u memoriji, kao rezultat ovaj tip tabele se obrađuju VRLO brzo. Idealno za privremene stolove. Naravno, ako dođe do kvara, svi podaci će biti izgubljeni.
    • Spoji. Ovaj tip je kolekcija regularnih tabela MyISAM. Ja sam još nisam koristio ovu vrstu, tako da ne mogu ništa više reći, štoviše, ova vrsta je još uvijek inovacija, pa stoga niko ne može jamčiti za stabilnost.
  • Kodiranje tabele. Apsolutno ista pravila kao za postavljanje kodiranja za polja.

Dakle, riješili smo kreiranje tabela, a sada razgovarajmo o tome kako promijeniti postavke tabele u PHPMyAdmin.

Dobar dan svima! Danas ću vam pričati o tome kako napraviti bazu podataka uphpmyadmin. I tako, prije svega, pokrećemo server i idemo na phpMyAdmin server instaliran na lokalni računar , To Danwer phpMyAdmin se nalazi na http://localhost/tools/phpmyadmin/, iu WAMP i na drugim serverima, phpMyAdmin je dostupan na adresi http://localhost/phpmyadmin/

Na stvarnom hostingu, phpMyadmin je dostupan na drugoj adresi. Koju trebate saznati od svog hosting provajdera.

U verziji 5.5 to izgleda ovako:


Zatim, u polje za naziv nove baze podataka, unesite, na primjer, naziv naše baze podataka test. U polju za poređenje odaberite kodiranje baze podataka, utf8_general_ci. Ako ne navedemo kodiranje, odnosno ostavimo „poređenje“ kakvo jeste, tada je ovo kodiranje odabrano po defaultu. Nakon što popunite ova polja, kliknite na dugme stvoriti.


Na sredini ekrana će se pojaviti poruka da je test baza podataka kreirana. Pojaviće se na listi sa kreiranim bazama podataka. Pronađemo ga na ovoj listi, kliknemo na njegovo ime i nađemo se unutar kreirane baze podataka. U početku je prazan, pa napravimo tabelu.

Postoje dva načina za kreiranje tabela:

prvi način: U lijevoj koloni kliknite na kreirati tabelu

I pojavit će se sljedeći prozor:


Postavite naziv za tabelu i naslov za svako polje. Na primjer, želimo da kreiramo tabelu sa kategorijama sajtova. Stoga postavljamo ime tabele kategorije. Za ovu tabelu su nam potrebna samo 2 polja, to su id i nazivi kategorija ( ime) Prema pravilima u bilo kojoj tabeli, prvo polje uvijek ima naziv id, odnosno identifikator. Za ovo polje obavezno odaberite tip INT i postavite dužinu vrijednosti u brojevima, na primjer 2. Odaberemo indeks PRIMARY, pa mu damo primarni ključ i ubacimo kvadratić za A_I (Auto Increment) tako da njegova vrijednost se automatski povećava za jedan.

Za polje naziva kategorije odaberite tip VARCHAR i postavite maksimalnu dužinu na 255 znakova.

Ako želite da dodate još jedno ili više polja, onda u polju dodati, unesite broj koji odgovara broju polja koja želite da dodate i kliknite na ok.

Ne trebaju nam četiri polja, već samo dva, tako da smo popunili samo dva polja, a ostala su prazna. U tabelu će biti dodana samo popunjena polja. Nakon što ste popunili sva potrebna polja, pomaknite se malo niže po stranici i kliknite na Sačuvaj.


To je to, tabela sa imenom kategorije kreiran. Pojavit će se na listi tabela na lijevoj strani ekrana.

drugi način:

Odmah nakon ulaska u bazu vidimo takav blok Kreirajte tabelu. Ovaj blok ima 2 polja u koja možemo unijeti naziv tabele i broj kolona u tabeli. Napravimo, na primjer, tabelu sa registrovanim korisnicima, nazovimo ovu tabelu korisnika. Ova tabela će imati sljedeća polja: id, login, lozinka, e-mail, f_name, s_name, U polje za broj kolona unesite 6 i kliknite na OK.


Pojavit će se isti prozor kao u prvoj metodi.


Nakon što popunite sva polja, spustite se malo niže i kliknite na dugme spasiti.

Sve sto korisnika kreiran. Također je dodat na lijevu listu sa kreiranim bazama podataka.

To je sve za danas. Sada znaš, kako kreirati MySQL bazu podataka i tabele u phpmyadmin-u bez poteškoća i zagonetki. Želim svima puno sreće!

Da li vam se svidio članak?

Pozdrav, prva objava u 2017! Dok su svi završavali svoje salate, odlučio sam da napišem kratku bilješku o ograničenjima stranih ključeva u MySQL bazi podataka.

Zašto su strani ključevi potrebni u tabeli?

Spoljni ključevi regulišu odnose između tabela. Zahvaljujući njima, kontrola nad strukturom baze podataka je znatno pojednostavljena, aplikacioni kod je smanjen i pojednostavljen, jer većinu odgovornosti za to prebacujemo sa svojih ramena na samu bazu podataka. Pravilno konfigurirani strani ključevi osiguravaju povećanje integriteta podataka smanjenjem redundantnosti.

Ukratko, strani ključevi imaju mnoge prednosti, pa je korisno znati kako ih koristiti.

Podešavanje stranih ključeva

Demonstrirat ću podešavanje u svom omiljenom jer je vrlo zgodno, osim toga, administrator ne skriva generirani kod zahtjeva i uvijek ga možete vidjeti ( zapamtite, kopirajte, kritikujte).

Primjer ManyToOne i OneToMany

Dvije tabele: goods(id, name, catalog_id) i catalogs(id, name) . U jednom imeniku gomila robe (OneToMany) i bilo koji broj robe može biti u jedan direktorij (MnogoToOne). Strani ključ u ovom primjeru je polje catalog_id u tabeli robe.

Kreiranje tabela u phpmyadmin-u

Generisani upiti

CREATE TABLE mybd.robe (id ime VARCHAR(255) NOT NULL , catalog_id INT NOT NULL, PRIMARNI KLJUČ ( id), INDEX( catalog_id)) ENGINE = InnoDB; CREATE TABLE mybd.katalozi (id INT NOT NULL AUTO_INCREMENT , ime VARCHAR(255) NOT NULL , PRIMARNI KLJUČ ( id)) ENGINE = InnoDB;

Postavljanje stranog ključa catalog_id

Vrijeme je za stvaranje veze između proizvoda i kataloga. Otvorite tabelu robe, idite na karticu "struktura" i potražite dugme "veze".

U odjeljku “ograničenja stranog ključa” popunite redove i odaberite akcije “ON DELETE” i “ON UPDATE”.

Generisani zahtjev

ALTER TABLE robe DODAJ STRANI KLJUČ ( catalog_id) REFERENCE mybd.katalozi(id) ON DELETE CASCADE ON UPDATE RESTRICT;

ON DELETE i ON UPDATE značenja

KASKADA— Kaskadno brisanje i uređivanje. Ova postavka znači da kada izbrišete katalog, svi proizvodi iz njega će također biti izbrisani. Prilikom uređivanja, ako promijenimo ID kataloga, polje “catalog_id” za proizvode će se automatski promijeniti.

RESTRICT— Sa ovim podešavanjem, ako pokušamo da izbrišemo katalog koji sadrži proizvode ili promenimo njegov ID, baza podataka će nam dati grešku i brisanje se neće dogoditi.

SET NULL— Iz naziva je jasno da ako katalog s takvim ID-om nestane (izbriše se ili promijeni), tada će vrijednost proizvoda u polju “catalog_id” biti postavljena na NULL. Morate biti oprezni s ovom postavkom jer indeksi prema zadanim postavkama "NISU NULL".

NO ACTION— Ignoriramo brisanje i uređivanje kataloga, pa čak i ako postoji nepostojeći identifikator u polju “catalog_id”, jednostavno ga ignorišemo.

ManyToMany primjer

Slučaj je složeniji; kako se zapisi ne bi duplirali, kreira se posebna tabela relacija koja se obično sastoji od dva polja. Pogledajmo primjer: autori (id, ime) , knjige (id, ime) , autor_knjiga(id_autora,id_knjige). Knjiga može biti koautor, a autor može imati više knjiga - odličan primjer odnosa Mnogo-To-Mnogo.

Kreiranje tabele veza

U phpmyadmin

Generisani zahtjev

CREATE TABLE biblioteka.autor_knjiga (autor_id INT NOT NULL, book_id INT NOT NULL , INDEX ( autor_id, book_id)) ENGINE = InnoDB;

author_id i book_id zajedno su složeni indeks, sve što ostaje je dodati ograničenja za svaki od njih u kartici "linkovi" i gotovi ste!

Zaključak

Ne propustite priliku da dodate više odgovornosti u bazu podataka kako biste vam olakšali rad na aplikaciji i razmislite o njenoj strukturi umjesto o kontroli odnosa tablica. Sretno sa dizajnom baze podataka, hvala na pažnji!

phpMyAdmin sadrži alat tzv Dizajner. Ovaj alat vam omogućava da pojednostavite rad kreiranja tabela u bazi podataka i odnosa između tabela.

Prvo kreirajte bazu podataka i prijavite se sa primljenim korisničkim podacima phpMyAdmin.

Faza I: Kreiranje konfiguracijskog spremišta

Faza II. Rad sa dizajnerom

  • U lijevom polju sa listom baza podataka odaberite novokreiranu
  • Idite na meni Više i podmeni Dizajner

  • Na traci sa alatkama sa desne strane izaberite Prikaži/sakrij listu tabela
  • Panel sa listom tabela će se otvoriti sa leve strane. Sakrij/prikaži nepotrebne tabele povezane sa Spremište postavki (pma), možete ukloniti/instalirati odgovarajući okvir za potvrdu

Stvaranje veze

  • Odabir tablica između kojih trebate konfigurirati odnose
  • Kliknite Stvorite vezu na traci sa alatkama
  • Zatim će strelica imati natpis Odaberite referentni ključ. Potrebno je da kliknete na primarni ključ tabele. U našem slučaju, ovo je ključ tbl1_id u tabeli table1
  • Strelica će se promijeniti u Odaberite strani ključ. Morate kliknuti na odgovarajuće polje povezane tabele. U našem slučaju, ovo je polje tbl1_id u tabeli table2
  • U dijaloškom okviru odaberite uredu


mob_info