SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő PHP folytatás JDBC, ODBC



Hasonló dokumentumok
SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő A PHP programozási nyelv JDBC, ODBC

Adatbázisok gyakorlat

Adatbázisok webalkalmazásokban

PHP-MySQL. Adatbázisok gyakorlat

Java programozási nyelv 11. rész Adatbázis-programozás

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

JavaServer Pages (JSP) (folytatás)

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )


Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

Java Database Connectivity (JDBC)

Java Programozás 10. Ea: JDBC. SQLite alapokon

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

B I T M A N B I v: T M A N

A Java nyelv. VI. Adatbázis-kezelés Javaban, Példaprogram Az elôzô részben láthattuk, hogy a Java ideális programozási nyelv perszisztens objektumok

A MOODLE KERETRENDSZER TELEPÍTÉSE

3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai

MySQL kontra MongoDB programozás. SQL és NoSQL megközelítés egy konkrét példán keresztül

PHP. Adatbázisok gyakorlat

PHP MySQL, Java JDBC MySQL. Adatbázisok az iskolában 2012 Dr. Balázs Péter Palatinus Endre és Erdőhelyi Balázs diái alapján

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

JAVA PROGRAMOZÁS 8.ELŐADÁS

PRECÍZ Információs füzetek

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Kliens oldali SQL-API

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Moodle -egy ingyenes, sokoldalú LMS rendszer használata a felsőoktatásban

Adatbáziskezelés Delphi 5 alatt. Bese Antal

B IT MAN 43/1 B IT MAN. Adatbázis Rendszerek II. Ellenőrző kérdések JDBC. v:

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

JDBC - adatbáziskezelés

Az Evolut Főkönyv program telepítési és beállítási útmutatója v2.0

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos

Megtanuljuk, hogyan lehet egy web-alkalmazással adatbázishoz csatlakozni Pontosan megnézzük a PHP lehetőségeit o MySQL-hez o Oracle-höz

hiányzott szeptemberben vagy A tanuló nem hiányzott szeptemberben szöveget

Programozási nyelvek Java

Tudás Reflektor. Copyright 2011; Kodácsy Tamás;

Adatbázis rendszerek 7. előadás State of the art

A WEB programozása - JSP1 dr.gál Tibor őszi félév

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

Internet programozása. 1. előadás

Java és web programozás

Segédanyag: Java alkalmazások gyakorlat

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

Vectory telepítési útmutató

Java programozási nyelv 6. rész Java a gyakorlatban

Apache, MySQL, PHP/Perl NetWare-n

Digitális aláíró program telepítése az ERA rendszeren

Moodle IPSZILON előadás március 23.

ADATBÁZISOK, 2018 ősz

INFORMATIKAI ALAPISMERETEK

Entity Framework alapú adatbáziselérés

ADATBÁZISOK, 2017 ősz

DogsWorld nevelde telepítése és beállítása

Webtárhely létrehozása a helyen. Lépések Teendő 1. Böngészőbe beírni: 2. Jobb oldalon regisztrálni (tárhelyigénylés).

Internet alkamazások Készítette: Methos L. Müller Készült: 2010

WordPress segédlet. Bevezető. Letöltés. Telepítés

MŰSZAKI KÖVETELMÉNYEK, A KÖRKERESŐ SZOFTVER SPECIFIKÁCIÓJA, KÖLTSÉGVETÉS. A) Műszaki követelmények

Produktív környezetben használt, nyílt forráskódú komplex térinformatikai megoldások dr. Siki Zoltán

Infocentrum Számlázó hálózatos verzió + Firebird Adatbázismotor

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

Rendszerkövetelmények

Bevezetés. OpenOffice.org Base. Vázlat. Adatbázis-tündér

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

A CA-42 adatkommunikációs kábel gyors telepítési útmutatója

Adatbázis rendszerek. dr. Siki Zoltán

7. K: JAVA alapok Konzultáció

Téradatbázisok használata QGIS-ből A DB kezelő modul 2.2 verzió

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java

Hozzunk létre két rekordot a táblában, majd véglegesítsünk (commit):

Torna. A torna.csv UTF-8 kódolású állományban soronként egy versenyző eredményeit tároljuk. Az adatokat pontosvessző választja el egymástól.

Kivételek kezelése (exception handling) Hibakezelés old style. Kivételkezelés

Java Programozás 11. Ea: MVC modell

OOP: Java 11.Gy: Enumok, beágyazott osztályok. 13/1 B ITv: MAN

C#---Access adatbáziskezelési gyakorlat

Témák. JDBC Adatbázisok JDBC használatának lépései Tranzakciók Adatbázis tervezés EK diagram

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Adatbázis-kezelés ODBC driverrel

IBM Data Server ügyfelek telepítése

A GeoEasy telepítése. Tartalomjegyzék. Hardver, szoftver igények. GeoEasy telepítése. GeoEasy V2.05+ Geodéziai Feldolgozó Program

JDBC Adatbáziskapcsolat objektumok SQL parancsok küldése Kötegelt módosítások ResultSet Tranzakciók DAO tervezési minta 1 / 45

A GeoEasy telepítése. Tartalomjegyzék. Hardver, szoftver igények. GeoEasy telepítése. GeoEasy V2.05 Geodéziai Feldolgozó Program

OOP és UML Áttekintés

Programozási technológia

Nyilvántartási Rendszer

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás

AdoDB a gyakorlatban

Tartalom DCOM. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés

Java Programozás 1. Gy: Java alapok. Ismétlés ++


Kedvenc Linkek a témakörben: MySQL mindenkinek Vizuális adatbázis tervezés

Programozás I. 1. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

KÖTELEZŐ PROGRAM, SZÁMONKÉRÉSEK. Részletek

Egyetemi könyvtári nyilvántartó rendszer

Szálkezelés. Melyik az a hívás, amelynek megtörténtekor már biztosak lehetünk a deadlock kialakulásában?

Segédanyag: Java alkalmazások gyakorlat

INFORMATIKAI ALAPISMERETEK

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Átírás:

SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS A MySQL adatbáziskezelő PHP folytatás JDBC, ODBC

ADATBÁZISOK Adatbázis = adott formátum és rendszer szerint tárolt adatok összessége. DBMS feladatai: adatstruktúra (adatbázisséma) definiálása, adatok aktualizálása (új felvétel, törlés, módosítás), lekérdezési lehetőségek, fejlesztő környezet biztosítása célalkalmazások létrehozásához. Relációs modell (1970): az adatok kétdimenziós táblázatokban tárolódnak

MYSQL MySQL: népszerű, ingyenes adatbáziskezelő rendszer ( DBMS ). A későbbiekben (PHP, JDBC, ODBC) arra látunk majd példákat, hogy lehet kapcsolódni hozzá Többfelhasználós, relációs alapelvekre épül A kurzus keretein belül a hozzá tartozó SQL nyelvjárást fogjuk használni sajnos néhány így megtanult dolog nem fog működni pl. Oracle használatakor Adminisztrációjához parancssori eszközök (mysql, mysqladmin) vagy a phpmyadmin rendszer használatos A kabinetben is elérhető

MYSQL / PHPMYADMIN

XAMPP PHP+MySQL alapú oldalak fejlesztéséhez kiváló rendszer platformfüggetlen, Windows, Linux, Mac OS X alatt egyaránt használható tartalma: Apache HTTP szerver MySQL, phpmyadmin PHP interpreter (Perl támogatás) Könnyen használható vezérlőpult Telepítés és elindítás után a böngészőben a http://localhost címen elérhető lesz az {xampp}/htdocs könyvtár A nyitólapot ebbe a könyvtárba helyezzük el index.php néven Otthon telepíteni! [4]

WEBES ŰRLAP LÉTREHOZÁSA A feladat létrehozni egy olyan űrlapot, amelyen található egy szövegbeviteli mező a felhasználó nevének bekérésére, és egy Küldés feliratú gomb. A bevitt adatot juttassuk el a szervernek, és ha a név Cser Lajos, jelenítsünk meg egy oldalt Demonstrátor szöveggel, egyébként pedig Szia XY legyen a válasz!

TESZTOLDAL.PHP POST HTTP eljárással az udvozol.php-nak elküldjük az űrlapon bevitt adatokat. Számos további vezérlő létrehozható (pl. rádiógombok, jelölőnégyzetek stb.)

UDVOZOL.PHP Ezen az oldalon már PHP kód is van. Az űrlap adatait a beépített $_POST tömb tartalmazza.

FELADAT Készítsünk PHP nyelven mini angol-magyar szótárat: a felhasználó megadhat egy szót, és ha az benne van a szótárunkban, kiírjuk a magyar megfelelőjét, ha nincs benne, a nincs találat szöveg jelenjen meg! szotar.php

FELADAT / FORDIT.PHP

KAPCSOLÓDÁS MYSQL-HEZ PHP-BAN (EGY EGYSZERŰ MEGKÖZELÍTÉS) 1. Kapcsolat nyitása $kapcsolat = mysql_connect("localhost", $user, $pwd); 2. Ellenőrizzük, van-e kapcsolat if (!$kapcsolat) { } die ("Nem lehet csatlakozni a MySQL kiszolgalohoz!"); 3. Ellenőrizzük, ki lehet-e választani a szükséges adatbázist, ha nem, hozzuk létre azt if (!(mysql_select_db($adatbazis, $kapcsolat)) ) { } mysql_query("create DATABASE..."); mysql_select_db($adatbazis, $kapcsolat); 4. Adjunk meg SQL nyelven megfogalmazott utasításokat mysql_query($utasitas, $kapcsolat);! A gyakorlati életben nem szoktuk ezeket a függvényeket alkalmazásaink kifejlesztéséhez használni, helyette számos API, keretrendszer áll rendelkezésre, amivel hatékonyabb és biztonságosabb eredményt kaphatunk. Jelen kurzus keretein belül viszont megelégszünk ezzel a megoldással is.

JDBC (JAVA DATABASE CONNECTIVITY) alkalmazásprogramozási interfész (API) Java nyelven készülő programokhoz java.sql csomag tartalmazza a vonatkozó osztályokat ezt importálni kell a programunkban Működési elv: a programunkban a JDBC-nek adunk át utasításokat A DriverManager nevű összetevő kezeli az egyes típusú adatbázisokhoz való kapcsolódást biztosító illesztőprogramokat A kapcsolat létrehozása előtt a megfelelő drivert regisztráljuk A kérésünk eljut a megfelelő adatbázishoz, és végrehajtódik

JDBC

JDBC / KAPCSOLÓDÁS MYSQL-HEZ import java.sql.*; public class Jdbc { public static void main(string args[]){ try { Statement stmt; ResultSet rs; Class.forName("com.mysql.jdbc.Driver"); // driver regisztralasa MySQL-hez. String url = "jdbc:mysql://localhost:3306/test"; utasítás eredmények tárolására Connection con = DriverManager.getConnection(url, usr", pass"); a Java-nak alapjában véve nem része a MySQL driver, azt először magunknak kell beszerezni [1] [2]

JDBC / LEKÉRDEZÉS stmt = con.createstatement(); stmt = con.createstatement(resultset.type_scroll_insensitive, ResultSet.CONCUR_READ_ONLY); rs = stmt.executequery("select * from proba"); // irassuk ki az eredmenyeket System.out.println("Display all results:"); while(rs.next()){ String id = rs.getstring("id"); String vnev = rs.getstring("vezeteknev"); String knev = rs.getstring("keresztnev"); System.out.println(id + " " + vnev + " "+ knev); } egy ExecuteQuery() függvényhívással adjuk meg, mi legyen az utasítás, a végén nincs pontosvessző. (Eredményt visszaadó utasításokhoz) addig igaz, amíg van fel nem dolgozott eredmény a válaszban, és ilyenkor egyből a következőre is lép

JDBC / KAPCSOLAT LEZÁRÁSA // zarjuk a kapcsolatot con.close(); // hiba eseten irassuk ki a stack-et (az egesz program egy try blokkban // volt) }catch( Exception e ) { e.printstacktrace(); } } }

ODBC (OPEN DATABASE CONNECTIVITY) A JDBC-hez hasonlóan számos adatbáziskezelővel képes kapcsolatot létesíteni, de nem Java környezetből, hanem C-ből. A megfelelő header fájlok include-olása után az alábbi adatstruktúrákkal dolgozhatunk: Környezet (Environment): a kliens hozza létre a DBMS-sel való kapcsolat előkészítéséhez. Kapcsolat (Connection): DBMS-sel való kapcsolat leírására szolgál. Egy környezethez több kapcsolat tartozhat. ODBC-utasítás (Statement). Egy SQL utasítás leírására szolgál. Minden ODBC-utasítás valamely kapcsolathoz tartozik. Ugyanaz az ODBCutasítás különböző időpontokban különböző SQL-utasításokat tartalmazhat. A fentiek kezelése handle-k (az adatstruktúrára mutató pointerek) segítségével történik. Ezek típusai sorrendben SQLHENV, SQLHDBC, SQLHSTMT. [3]

MEGJEGYZÉSEK [1] A MySQL-hez szükséges JDBC driver beszerezhető itt: http://dev.mysql.com/downloads/connector/j/ [2] Németh Gábor példái nyomán [3] Forrás: dr. Katona Endre: Adatbázisok http://www.inf.u-szeged.hu/~katona/db-ea1.pdf [4] Az XAMPP letölthető a következő címről: http://www.apachefriends.org/en/xampp.html