1 / 75

Open source s istem za upravljanje bazama podataka

Open source s istem za upravljanje bazama podataka. M ySQL je veoma brz i robus t an sistem za upravljanje relacionim bazama podataka.

Télécharger la présentation

Open source s istem za upravljanje bazama podataka

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Open source sistem za upravljanje bazama podataka

  2. MySQLje veoma brz i robustan sistem za upravljanje relacionim bazama podataka. • Server upravlja pristupom podacima, pri tome omogućuje da s njima radi više korisnika istovremeno i da pristup podacima bude brz i dozvoljen samo ovlašćenim korisnicima. • MySQL je na raspolaganju korisnicima od 1996. godine. Do sada je više puta dobijao nagradu "Reader's Choice Award" u svojoj kategoriji.

  3. Šta je to štoMySQLčini tako posebnim ? • MySQLje Open Source RSUBP. • Dostupan je na Internetu i pri tome je besplatan. • može se preuzeti i koristiti prema GPL licenci. • Cena za komercijalnu upotrebu i podršku su niski. Ovo je veliki kontrast drugim komercijalnim sistemima za baze podataka (kao što su Oracle, MS SQL, Informix i sl.), kreiranih od strane velikih kompanija, koji su pri tome veoma skupi.

  4. Šta je to štoMySQLčini tako posebnim ? • Tehnička podrška. MySQLje jedan od retkih open source projekata iza kojih stoje konkretne firme (MySQL AB) koja isključivo radi na održavanju i razvoju tog proizvoda. Uz to, postoji ogroman broj korisnika koji direktno utiču na razvoj.

  5. Šta je to štoMySQLčini tako posebnim ? • Brzina i stabilnost. Svaki od sistema za baze podataka ima oblasti u kojima se posebno ističe. Jedna od ovih oblasti je brzina - široko je priznato da su odgovori ovog RDBMS u rangu sa najbržim sistemima. • Upravo zbog brzine, MySQL često predstavlja izbor za internet aplikacije, gde se zbog velikog saobraćaja zahteva velika brzina odziva.

  6. Šta je to štoMySQLčini tako posebnim ? • Funkcionalnost.MySQLnudi mnoštvo opcija koje odlikuju „velike” RSUBP kao što su: • podrška za ANSI SQL, kao i postojanje sopstvene ekstenzije • online backup, • replikacija, • podrška za SSL (Secure Sockets Layer), • integracija u skoro sva razvojna okruženja.

  7. Šta je to štoMySQLčini tako posebnim ? • Lakoća upotrebe. • Distribucija MySQL-aje relativno mali paket, koji ne zahteva stotine i stotine megabajta kao drugi SUBP. • Razvojna filozofija ovog sistema fokusirana je na široku i laku upotrebljivost, gde se u paket ubacuju samo neophodne funkcije. Ovo ga čini relativno lakim za razumevanje, za instaliranje, podešavanje i administraciju.

  8. Šta je to štoMySQLčini tako posebnim ? • Portabilnost. MySQL može da se pokrene na brojnim paltformama, a najvažnije su UNIX, Linux i Windows.

  9. Šta je to štoMySQLčini tako posebnim ? • Rapidni razvoj. MySQL od verzije 5.0 uključuje podršku za: • transakcije, • replikaciju, • tekstualno pretraživanje i • RAID fajl-sisteme. • Trigere (okidače) • uskladištene procedure (stored procedures)

  10. Šta je to štoMySQLčini tako posebnim ? • Interoperabilnost. • može da se koristi u kombinaciji sa velikim brojem drugog softvera, bilo open source ili komercijalnog. • Ove alatke vam omogućavaju da na lak način iskoristite sve mogućnosti baza podataka.

  11. Šta je to štoMySQLčini tako posebnim ? • Programibilnost. • Ukoliko postojeći softver ne odgovara vašim potrebama, možete kreirati sopstveni. • Dostupni su interfejsi za veliki broj programskih jezika, kao što su: • C, • C++, • Perl, • PHP, • Python, • Java, • Ruby, itd.

  12. Šta je to štoMySQLčini tako posebnim ? • Saradnja sa najvećim proizvođačem poslovnog softvera SAP – om na maxDB-u značajno utiče i na kvalitet osnovnog proizvoda • Uz sve prethodno navedeno, ne čudi što se MySQLrazvija brže od rivalskih proizvoda i što lista korisnika komercijalne verzije ovog sistema za upravljanje bazama podataka izgleda ovako:

  13. Tipovi podataka uMySQL-u • Numerički tipovi podataka • NUMERIC ili DECIMAL (sinonim je DEC) • Čuvanje vrednosti sa pokretnim zarezom • Obično se koriste za rad sa novčanim vrednostima • Opseg vrednosti jednak je kao za brojeve s pokretnim zarezom dvostruke tačnosti • INTEGERi varijante • Standardni tip za celobrojne vrednosti • Smešta se u 4 bajta, što daje 232 vrednosti • Varijante: • TINYINT zauzima jedan bajt (28 mogućih vrednosti). Sinonim je BIT • SMALLINT zauzima dva bajta (216 mogućih vrednosti). • MEDIUMINT zauzima tri bajta (224 mogućih vrednosti). • BIGINT zauzima osam bajtova (264 mogućih vrednosti). • FLOAT, namenjen za rad s brojevima s pokretnim zarezom jednostruke tačnosti. • DOUBLE, namenjen za rad s brojevima s pokretnim zarezom dvostruke tačnosti. • Sininimi za ovaj tip su REAL i DOUBLE PRECISION

  14. Tipovi podataka uMySQL-u • Znakovni i tekstualni tipovi podataka • CHAR • Čuvanje znakovnih vrednosti fiksne dužine • Maksimalna dužina podatka tipa CHAR je 255 znakova • VARCHAR • Čuvanje znakovnih vrednosti promenljive dužine • Maksimalna dužina podatka tipa VARCHAR je 255 znakova • TEXT i njegove varijante • TEXT– za skladištenje tekstualnih podatka dužih od 255 znakova • Varijante • TINYTEXT može sadržati najviše 255 (28-1) znakova ili bajtova • TEXTmože sadržati najviše 65535 (216-1) znakova ili bajtova (64 KB) • MEDIUMTEXT može sadržati najviše 224-1 znakova ili bajtova (16 MB) • LONGTEXT može sadržati najviše 232-1 znakova ili bajtova (4 GB)

  15. Tipovi podataka uMySQL-u • Znakovni i tekstualni tipovi podataka (nastavak) • ENUM • omogućava zadavanje liste mogućih vrednosti. Polje ovog tipa može sadržati jednu vrednost iz nabrojanog skupa mogućih. • Tip podataka ENUM deklariše se na sledeći način: Pol enum(‘m’, ’z’) Pošto vrednost tipa ENUM može biti i NULL, moguće vrednosti polja pol su m,z,NULL il error • SET • Sličan tipu ENUM s tom razlikom što polja mogu sadržati i više vrednosti iz nabrojanog skupa mogućih

  16. Tipovi podataka uMySQL-u • Datumski i vremenski tipovi podataka • DATE • Čuvanje datuma u ISO redosledu godina-mesec-dan • Datumi se prikazuju u formatu GGGG-MM-DD • TIME • Čuvanje podataka koji predstavljaju vreme • Prikazuju se u formatu ČČ:MM:SS • DATETIME • Čuvanje datuma i vremena u formatu godina-mesec-dan ČČ:MM:SS • TIMESTAMP • Ako u određenom redu zadate vrednost NULL u polje se upisuje vreme kada je red dodat tabeli ili kada je red poslednji put izmenjen • YEAR • Čuvanje podataka koji predstavljaju godine. • Moguće je zadati YEAR(2) ili YEAR(4), podrazumevano je YEAR(4) • YEAR(2) predstavlja opseg godina od 1970 do 2069.

  17. Kreiranje baza podataka, tabela i indeksa u MySQL-u Razlikovanje malih i velikih slova uMySQL-u • U rezervisanim rečima SQL jezika ne pravi se razlika između upotrebe malih i velikih slova. To je standardno u svim RDBMS. • Da li će MySQL praviti razliku između malih i velikih slova u imenima baza podataka i tabela zavisi od operativnog sistema pod kojim radite. Savet: definisati sopstveni standard koji treba dosledno primenjivati radi izbegavanja moguće konfuzije. • U MySQL-u se u imenima kolona, indeksa i alijasa nikada ne pravi razlika između malih i velikih slova.

  18. Kreiranje baza podataka, tabela i indeksa u MySQL-u • Kreiranje baza podataka create database zaposleni; • Da je ova komanda uspešno izvršena, možete proveriti ako zadate komandu: show databases; • Biranje baze podataka • Pre kreiranja tabela ili bilo kakvih drugih promena u našoj bazi, potrebno je da naglasimo da ćemo sve promene raditi u bazi koja ima naziv “zaposleni” use zaposleni ; • Sada je izabrana (otvorena) baza podataka zaposleni i za sve akcije koje izvršimo podrazumevaće se da se odnose na tu bazu podataka.

  19. Kreiranje baza podataka, tabela i indeksa u MySQL-u • Kreiranje tabela CREATE TABLEnazivtabele (definicije kolona tabele) [TYPE=tip_tabele]; Ili puni oblik: CREATE [TEMPORARY] TABLE [IF NOT EXISTS] ime_tabele [(definicija_kolone,…)] [opcije_za_tabelu] [komanda select] Primer: create table odeljenje (odeljenje int not null auto_increment primary key, naziv varchar(30) ) type=InnoDB;

  20. Kreiranje baza podataka, tabela i indeksa u MySQL-u • Kreiranje indeksa Primer: CREATE INDEX ime ON zaposleni(ime); • Indeksi definisani nad kolonama tipa char I varchar mogu se ograničiti na prvih nekoliko znakova u polju. CREATE INDEX parcijalno_imeON zaposleni(ime(5));

  21. Kreiranje baza podataka, tabela i indeksa u MySQL-u • Brisanje baza podataka, tabela i indeksa • Brisanje baze podataka DROP DATABASE [IF EXISTS] naziv_baze; • Brisanje tabela DROP TABLE [IF EXISTS] naziv_tabele [,naziv_tabele, …] • Brisanje indeksa DROP INDEX naziv_indeksa ON naziv_tabele;

  22. Kreiranje baza podataka, tabela i indeksa u MySQL-u • Izmena strukture postojeće tabele • Primer za kreiranje indeksa: ALTER TABLE zaposleni ADD INDEX ime (ime); • Opšti oblik komande: ALTER [IGNORE] TABLE ime_tabele vrsta_izmene[, vrsta_izmene,…] Vrste_izmene: ADD [COLUMN] definicija_kolone [FIRST | AFTER ime_kolone] Ili ADD [COLUMN] (definicija_kolone, definicija_kolone,…) MODIFY [COLUMN] definicija_kolone [FIRST | AFTER ime_kolone] DROP [COLUMN] ime_kolone Ili DROP PRIMARY KEY

  23. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda INSERT INSERT [INTO]naziv_tabele VALUES (vrednost_1, vrednost_2,…), (vrednost_n, vrednost_n+1,…), (vrednost_k, vrednost_k+1,…), ili INSERT [LOW_PRIORITY |DELAYED] [INTO] ime_tabele [(ime_kolone,…)] VALUES (izraz |DEFAULT, …),)…),… ON DUPLICATE KEY UPDATE ime_kolone=izraz, …]

  24. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda INSERT(nastavak) ili INSERT [LOW_PRIORITY |DELAYED] [INTO] ime_tabele [(ime_kolone,…)] SELECT … Ili INSERT [LOW_PRIORITY |DELAYED] [INTO] ime_tabele [(ime_kolone,…)] SET ime_kolone = (izraz |DEFAULT), … ON DUPLICATE KEY UPDATE ime_kolone=izraz, …]

  25. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda INSERT(nastavak) • Neobavezne odredbe: • LOW PRIORITY, kojom se zadaje da se komanda INSERT izvršava sa niskim prioritetom, s tim što se blokira klijentski program za unos podataka. • DELAYED, kojom se zadaje da se izvršavanje odloži, omogućava izvršavanje drugog upita, s tim što če predhodni upis biti obavljen tek kada je tabela slobodna Obe opcije čine da se upisivanje podataka u tabelu odloži dom više ne bude ni jednog klijenta koji pokušava da učita podatke iz tabele. • Opcija ON DUPLICATE KEY UPDATE pruža rešenje problema dupliranog primarnog ključa ili duplirane jedinstvene vrednosti. Iza ove opcija sledi naredba UPDATE koja menja postojeću vrednost u koloni.

  26. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda REPLACE • Slično deluje kao i komanda INSRT, s tom razlikom što ako dođe do dupliranja ključa, novi red koji želite da upišete zamenjuje posojeći red. REPLACE [LOW_PRIORITY |DELAYED] [INTO] ime_tabele [(ime_kolone,…)] VALUES (izraz,…),(…),… ili REPLACE [LOW_PRIORITY |DELAYED] [INTO] ime_tabele [(ime_kolone,…)] SELECT … ili REPLACE [LOW_PRIORITY |DELAYED] [INTO] ime_tabele [(ime_kolone,…)] SET ime_kolone = (izraz |DEFAULT), …

  27. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda DELETE • Omogu’ava brisanje redova iz tabele. • Primer: DELETE FROM odeljenje; • Op[ti oblik ove komande je: DELETE [LOW_PRIORITY] [QUICK] FROM ime_tabele [WHERE uslov] [ORDER BY …] [LIMIT broj_redova] Ili DELETE [LOW_PRIORITY] [QUICK] ime_tabele[, ime_tabele…] FROM reference_na_tabele [WHERE uslov]

  28. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda DELETE (nastavak) Ili DELETE [LOW_PRIORITY] [QUICK] FROM ime_tabele[, ime_tabele…] USING reference_na_tabele [WHERE uslov]

  29. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda TRUNCATE • Omogu’ava brisanje svih redova iz tabele. • Brza je od naredbe DELETE • Primer: TRUNCATE TABLE zaposleni;

  30. Unos, brisanje i ažuriranje podataka u MySQL-u Komanda UPDATE • Omogućava ažuriranje postojećih redova u tabelama. Primer: UPDATE zaposleni SET posao=‘DBA’ WHERE zaposleni=6651 Naredba UPDATE ima sledeći oblik: UPDATE ime_tabele SET ime_kolone1=izraz1 [,ime_kolone2 = izraz2…] [WHERE uslov] [ORDER BY …] [LIMIT broj_redova]

  31. Unos, brisanje i ažuriranje podataka u MySQL-u Grupno unošenje podataka pomoću komande LOAD DATA INFILE • Datoteka Odeljenje.txt 42 Finansije 128 istrazivanje i razvoj NULL Ljudski resursi NULL Marketing Datoteka je u standardnom formatu za primenu naredbe LOAD DATA INFILE, Sto znači da se svaki red podataka nalazi u posebnom redu datoteke, a kolone su razdvojene znakom za tabulator. Primer: LOAD DATA LOCAL INFILE ‘odeljenje.txt’INTO TABLE odeljenje;

  32. Unos, brisanje i ažuriranje podataka u MySQL-u Grupno unošenje podataka pomoću komande LOAD DATA INFILE nastavak • Datoteka novi_programeri.csv Julia, programer, 128 Douglas, programer, 128 Tim, programer, 128 Primer: LOAD DATA LOCAL INFILE ‘e:\\novi_programeri.csv’ INTO TABLE zaposleni FIELDS TERMINATED BY ‘,’ /* obavezno mora da se naznaci */ LINES TERMINATED BY ‘/n’ /* nije neophodno */ IGNORE 2 LINES /* posto su prva dva reda zaglavlje treba ih preskociti */ (ime,posao,odeljenje); /* posto datoteka ne sadrzi sifre zaposlenih moramo naznačiti u koja polja (i kojim redosledom) želimo da prenesemo podatke */

  33. Napredne mogućnostiMySQL-a • Transakcije • Pogledi (Views) • Uskladištene procedure (Stored procedures) • Funkcije • Trigeri

  34. Transakcije u MySQL-u • Transakcija označava skup SQL komandi koji se izvršavaju kao nedeljiva celina. • Ako su sve SQL komande koje čine transakciju uspešno izvršene onda je transakcija izvršena, u suprotnom se ne sme ništa uraditi.Ovaj koncept je poznat kao nedeljivost (atomicity). • Klasični primer je iz bankarskog okruženja: Određeni novčani iznos treba prebaciti sa računa jedne osobe na račun druge osobe: UPDATE racun SET saldo=saldo-500 WHERE vlasnik = “Zoran”; UPDATE racun SET saldo=saldo+500 WHERE vlasnik = “Dragan”; Oba SQL upita moraju biti izvršena ili nijedan. Oba upita čine transakciju.

  35. Transakcije u MySQL-u • Transakcione baze moraju obezbediti 4 osobine koje se skraćeno nazivajuACID: • Atomicity (nedeljivost)Iskaz se sastoji od nekoliko logičnih celina - skupa upita. Ili su svi upiti izvršeni uspešno ili nijedan od njih. • Consistency (usklađenost)Baza je u koezistentnom stanju pre i posle transakcije. Svaka operacija nad podacima prebacuje bazu podataka iz jednog ispravnog stanja u drugo. Ne sme biti “međustanja” u kojima podaci nisu potpuno usklađeni. • Isolation (izolovanost)Transakcija nema efekat na druge procese. To znači da efekti pojedinačnih upita u transakciji nisu vidljivi drugim klijentima sve dok se transakcija uspešno ne izvrši (commit iskazom). • Durability (trajnost)Kada je transakcija uspešno obavljena njeni efekti su permanentni.

  36. Transakcije u MySQL-u Preduslov: korišćenje transaction-safe storage engine (mašina za skladištenje podataka kao što su InnoDB, BDB ili NDB Cluster), START TRANSACTION, COMMIT i ROLLBACK START TRANSACTION | BEGIN [WORK] COMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE] ROLLBACK [WORK] [AND [NO] CHAIN] [[NO] RELEASE] SET AUTOCOMMIT = {0 | 1}

  37. Transakcije u MySQL-u • START TRANSACTIONiBEGIN naredbaoznačavaju početak nove transakcije. • COMMITpotvrđuje tekuću transakciju, čineći promene nastale tom transakcijom stalnim. • ROLLBACKponištava tekuću transakciju, otkazujući sve promene koje su o okviru nje izvršene. • Naredba SET AUTOCOMMIT uključuje ili isključuje autocommit mod za aktivnu konekciju

  38. Transakcije u MySQL-u • Predefinisano je da MySQL radi sa uključenim autocommit modom. To znači da čim izvršite SQL naredbu koja ažurira neku tabelu,MySQLpromenu zapisuje u bazi. • Ako koristite transaction-safe storage engine (kao što su InnoDB, BDB ili NDB Cluster),možete isključiti autocommit mod na sledeći način: SET AUTOCOMMIT=0; Napomena:ako isključite automatsko potvrđivanje transakcija nije neophodno izričito zadati komandu START TRANSACTION da biste započeli transakciju.

  39. Transakcije u MySQL-u create table test( ime char(20) not null unique); start transaction; insert into test(ime) values(“Jovan”); insert into test(ime) values(“Petar”); commit;

  40. Transakcije u MySQL-u • start transaction koristimo za početak transakcije. • Nakon uspešno izvršena 2 upita koristili smocommitza kraj transakcije, koja je u ovom slučaju uspešno obavljena. • Važno je da nijedna od promena tokomtransakcije (unošenje novog imena Petar) nije vidljiva drugim klijentima sve dok se ne izvrši commit. To je osobinaizolovanosti.

  41. Transakcije u MySQL-u • Primer neuspele transakcije: set autocommit=0; start transaction; insert into test(ime) values(”Lazar”); insert into test(ime) values(“Jovan”); rollback; • Tokom transakcije došlo je do greške, jer smo pokušali da unesemo već postojeću vrednost (Jovan) u polje definisano kao jedinstveno (unique). • Kao rezultat došlo je do greške, pa smo izvršili rollback iskaz. • Tabela sadrži iste slogove kao i pre početka transakcije, tj. ime Lazar koje je prvo uneto na početku transakcije nije ostalo upisano jer transakcija u celini nije uspela.

  42. Transakcije u MySQL-u • Počev od verzijeMySQL4.1.1 moguće je snimiti tačku u transakciji (savepoint) na koju se možemo vratiti rollback-om. Primer: set autocommit=0; start transaction; insert into test(ime) values('Lazar'); savepoint tacka1; insert into test(ime) values('Mirko'); rollback to savepoint tacka1; insert into test(ime) values('Dragan'); commit; • Nakon unosa prvog imena (Lazar) snimili smo poziciju u transakciji kao tacka1. Unos imena Mirko je poništen vraćanjem na tačku1, nakon koje smo uneli uspešno ime Dragan i odradili commit. • Na kraju transakcije, vidi se da ime Mirko nije uneto jer smo se vratili na tačku u transakciji gde to ime nije postojalo.

  43. Transakcije u MySQL-u Naredbe na koje ROLLBACK nema efekta su DDL naredbe, kao što su: • CREATE ili DROP DATABASE, • CREATE, ALTER ili DROP TABLE ili • CREATE, ALTER ili DROP PROCEDURE I zbog toga ih ne treba koristiti u transakcijama.

  44. Pogledi (Views) u MySQL-u • Pogledi su virtuelne tabele koje nastaju kao rezultat SQL upita nad jednom ili više tabela. • Oni fizički ne postoje. • Pogledi predstavljaju jednostavan metod smeštanja SQL naredbe ubazu podataka. • Uvedeni su u MySQL u verziji 5.0.1 Kreiranje pogleda CREATE VIEWview_nameAS SELECTcolumn_list...FROMtable_name;

  45. Pogledi (Views) u MySQL-u • Kreiranjem pogleda se ne pravi kopija postojećih podatka iz tabele ili tabela koje su učestvovale u kreiranju pogleda, već je to samo memorisanje SQL komande. • Pogled je po svemu ravnopravan sa ostalim tabelama baze podataka: • mogu se pisati upiti koji se odnose na jedno ili više polja pogleda • Mogu se u okviru upita povezivati sa ostalim tabelama baze podataka

  46. Pogledi (Views) u MySQL-u • Ažuriranje podataka korišćenjem pogleda • Ograničenja prilikom ažuriranja: • za ažuriranje podataka ne mogu biti korišćeni pogledi koji sadrže sledeće SQL klauzule : • UNION • DISTINCT i DISTINCTROW • HAVING i GROUP BY klauzule • Brisanje podataka korišćenjem pogleda • Ograničenja prilikom brisanja: • Za brisanje podataka se mogu koristiti isključivo pogledi kreirani nad jednom tabelom. • Brisanje pogleda DROP VIEW [IF EXISTS]view_name;

  47. Uskladištene procedure u MySQL-u Uskladištena procedura (stored procedure) je procedura (potprogram ili metod u programskim jezicima) koja je smeštena u bazi podataka. MySQL podržava dve vrste ovakvih procedura: • uskladištene procedure koje ne vraćaju vrednost • funkcije koje vraćaju vrednosti na isti način kao i funkcije ugrađene u MySQL. • Uskladištena procedura ima naziv, listu parametara i sadrži jednu ili više SQL naredbi

  48. Uskladištene procedure u MySQL-u • Zašto se koriste ? • Iako predstavljaju novu mogućnost u okviru MySQL-a, odavno postoje u ostalim RDBMS • Uskladištene procedure su brze. Efekat brzine se postiže pre svega kroz smanjenje mrežnog saobraćaja. • Naročito su pogodne za ponavljajuće zadatke koji zahtevaju proveru, iteraciju, sa malo ili bez interakcije sa korisnikom • Ako promenite jezik za pristup bazi podataka ne bi trebalo da bude problema jer je logika u bazi podataka a ne aplikaciji. • Sintaksa uskladištenih procedura MySQL-a je bliska SQL:2003 standardu, tako da se lako mogu primeniti i na drugim RDBMS

  49. Uskladištene procedure u MySQL-u Važno !!! S obzirom da su uskladištene procedure uvedene u verziji 5, neophodno je prvo proveriti koja verzija je instalirana na računaru, da biste bili sigurni da ih uopšte možete koristiti. show variables like 'version'; Ili SELECT VERSION();

  50. Uskladištene procedure u MySQL-u • Kreiranje pomoću MySQL Query Browser-a Opcija Script > Create Stored Procedure / Function Ili desni klik u prozoru Shemata i izbor opcije Create Stored Procedure / Function

More Related