B I T M A N B I v: T M A N
|
|
- Zsuzsanna Vassné
- 9 évvel ezelőtt
- Látták:
Átírás
1 Adatbázis Rendszerek II. 7. Gy: Oracle JDBC B I v: T M A N 1/104
2 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 2/104
3 A cél: Jávás kliensről manipulálni az adatbázist. 3/104
4 Kis kitérő Adatbázis elérési módok: Beágyazott SQL: egy algoritmikus nyelvbe (C, Pascal, FORTRAN, stb.) ágyazva alkalmazzuk az SQL nyelv elemeit. Az algoritmikus feladatokat a programnyelv, az adatbázissal kapcsolatos műveleteket az SQL végzi. Hátrány: ha változik az adatbázis, teljesen újra kell írni a programot. ODBC (Open Database Connenctivity): szabványos eljáráskészlet az egyes adatbázisokhoz. Technológia: drivereken keresztül érhetők el az adatbázisok, a driverek felülete egységesen programozható. Így ha változik az adatbázis, csak a drivert kell lecserélni. 4/104
5 Kis kitérő (2) Adatbázis elérési módok: OO LI (Object Oriented Line Interface): adatbázis elérés objektum orientált módon (JDBC, ADO.NET) WEB LI: adatbázis elérés webes felületről 5/104
6 A probléma és megoldása A Java objektum-orientált, az adatbázisok többnyire még nem azok. Az adatbázis eléréséhez szükséges egy interfész, ennek kezelése lehet adatbázis függő API-hívások JNI-n keresztül (Java Native Interface), de lehet adatbázis független is JDBC (Java Data Base Connectivity). Adatmanipulációs nyelv mindkét esetben az SQL marad. 6/104
7 JDBC API Java nyelven íródott osztályokat és interfészeket tartalmazó csomagok, melyek egy standard API-t biztosítanak adatbázis-keretrendszerek, valamint adatbázis alapú alkalmazások fejlesztésére. A JDBC API előnye abban áll, hogy elvileg bármilyen adatforrást elérhetünk vele bármilyen platformon, melyen a java virtuális gép futtatható. Nem kell tehát minden adatbázisszerverre külön programot írni, hanem ugyanaz a kód működni fog bármely adatbázisszerverrel. 7/104
8 JDBC használat Adatbázis feltétel: szükséges egy meghajtó-program (driver), amellyel az adatbázis-kezelő kielégíti a JDBC specifikációt. A driver rendszerfüggő, az adatbázis gyártójának weblapjáról kell letölteni. Java programozó: a java.sql és a javax.sql csomagokban található osztályok, metódusok segítségével dolgozik, és a programhoz csatolja a használt adatbázis-kezelő JDBC driver-ét. 8/104
9 A megoldás (1.) Kétrétegű megoldás Kliens-oldal Szerver-oldal SQL Driver Piros, Kék, Zöld 9/104
10 A megoldás (2.) Háromrétegű megoldás Kliens-oldal Szerver-oldal Alkalmazás DB SQL Driver Piros, Kék, Zöld 10/104
11 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 11/104
12 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés Eredmények feldolgozása Lekapcsolódás 12/104
13 Az adatbázis-programozás lépései Kapcsolódás Driver regisztrálása Lekérdezés Kapcsolódás a DBMS-hez Eredmények feldolgozása Lekapcsolódás 13/104
14 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés SQL kérés (STATEMENT) összeállítása Eredmények feldolgozása SQL kérés elküldése Lekapcsolódás 14/104
15 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés Az eredményhalmaz (CURSOR) rekordonkénti bejárása Eredmények feldolgozása Az értékek átadása programváltozóknak Lekapcsolódás 15/104
16 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés Eredményhalmaz lezárása Eredmények feldolgozása SQL kérés lezárása Lekapcsolódás Kapcsolat lezárása 16/104
17 Az adatbázis-programozás lépései Kapcsolódás Driver regisztrálása Kapcsolódás a DBMS-hez Lekérdezés SQL kérés (STATEMENT) összeállítása SQL kérés elküldése Eredmények feldolgozása Lekapcsolódás Az eredményhalmaz (CURSOR) rekordonkénti bejárása Az értékek átadása programváltozóknak Eredményhalmaz lezárása 17/104 SQL kérés lezárása Kapcsolat lezárása
18 JDBC alapok Kliens számítógép 18/104
19 A JDBC programozás lépései (1) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt (ResultSet) 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 19/104
20 DriverManager Feladatai: Kezeli a különböző adatbázisok elérését szolgáló driver-eket, Kezeli a connection-t (kapcsolatot), Kezeli a statement-eket (SQL kifejezéseket), Kezeli a resultset-eket (cursorokat). 20/104
21 Az adatbázis-programozás lépései Kapcsolódás Driver regisztrálása Lekérdezés Kapcsolódás a DBMS-hez Eredmények feldolgozása Lekapcsolódás 21/104
22 A JDBC programozás lépései (4) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 22/104
23 A Driver (meghajtó) betöltése (1) Feltétel: a Java keresési útvonalán elérhető legyen a fizikai driver. Oracle-höz: ojdbc6.jar Megteremtése: bemásolni a drivert a Java keresési útvonalában szereplő könyvtárba, és telepíteni: set classpath=.; ojdbc6.jar /104
24 A Driver (meghajtó) betöltése (1) Ha a driver elérhető a keresési útvonalon, regisztrálható Javaban: import java.sql.*; public void Reg(){ try {Class.forName("oracle.jdbc.driver.OracleDriver");} catch (ClassNotFoundException e) { System.out.println("Hibás driver regisztráció!" +e.getmessage());} } 24/104
25 A Driver (meghajtó) betöltése (2) Grafikus felületen: import java.sql.*; import java.awt.*; import javax.swing.*; public void Reg(){ } try {Class.forName("oracle.jdbc.driver.OracleDriver");} catch (ClassNotFoundException ex) {JOptionPane.showMessageDialog(null,"Hibás driver regisztráció!", "BitMan mondja: ",2);} 25/104
26 A DriverManager működése A DriverManager osztály tartalmaz egy listát a regisztrált driverekkel. A getconnection() metódus hívásakor megpróbálja megtalálni a megfelelő drivert, mely kapcsolódni tud az URL-ben megadott adatbázishoz (sorba kipróbálja a drivereket, míg egyet talál, amely kapcsolódik a megfelelő URL segítségével) Ezt a manager-szintet el lehet kerülni direkt Driver metódus hívásával. (csak ritkán használjuk, pl. ha két driver is van, amelyik hozzá tud kapcsolódni egy bizonyos adatbázishoz és explicit szeretnénk meghatározni, hogy melyikkel akarunk kapcsolódni.) 26/104
27 A JDBC programozás lépései (4) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 27/104
28 Kapcsolat létrehozása public Connection Kapcs(String host, String dbname, String uname, String pword){ } Connection conn = null; try { String url = "jdbc:oracle:thin:@"+host+":1521:"+dbname; conn = DriverManager.getConnection(url, uname, pword); } catch (SQLException ex) { System.out.println("AB Kapcsolódás hiba: "+e.getmessage()); conn = null; } return conn; 28/104
29 A kapcsolat lezárása public void Lekapcs(){ try {conn.close();} catch(exception e) { System.out.println("AB lekapcsolódás Hiba: "+ e.getmessage());} } 29/104
30 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés SQL kérés (STATEMENT) összeállítása Eredmények feldolgozása SQL kérés elküldése Lekapcsolódás 30/104
31 Munka az adatbázisban (1) Amint a kapcsolat létrejött, az adatbázisnak SQL parancsokat küldhetünk. A JDBC API nem korlátoz a kiadható SQL parancsok tekintetében: azaz adatbázis-specifikus vagy akár nem SQL parancsokat is használhatunk. Azt azonban biztosítanunk kell, hogy az adatbázis fel tudja dolgozni a parancsokat. Pl. hívhatunk tárolt eljárásokat egy olyan adatbázisra, amelyik nem támogatja ezeket, de egy kivétel fog dobódni. 31/104
32 Munka az adatbázisban (2) A JDBC API három interfészt biztosít SQL parancsok küldésére: 1. Statement paraméter nélküli SQL parancsok hívására 2. PreparedStatement paraméteres (?), előfordított SQL parancsok hívására 3. CallableStatement Tárolt eljárások hívására 32/104
33 Munka az adatbázisban (3) Végrehajtási módok: 1. executeupdate(): Adatmanipulációs (INSERT, UPDATE, DELETE) és adatdefiníciós (CREATE/DROP TABLE) utasítások futtatására 2. executequery(): Eredménytáblát visszaadó utasítások futtatására (SELECT) 3. execute(): Mindkét típus végrehajtására alkalmas 33/104
34 Munka az adatbázisban (4) SQL Statement Végrehajtó parancs Visszatérő érték típusa Magyarázat Select executequery(sqlp); ResultSet Insert Update Delete Create Drop Alter Tárolt eljárások 34/104 executeupdate(sqlp); execute(sqlp); Int boolean Rekordok (adatok) Az érintett sorok száma, vagy 0. Igaz, ha az első visszatérő adat ResultSet.
35 A JDBC programozás lépései (4) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 35/104
36 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés Eredményhalmaz lezárása Eredmények feldolgozása SQL kérés lezárása Lekapcsolódás Kapcsolat lezárása 36/104
37 Erőforrások felszabadítása ResultSet lezárása: rs.close(); Statement lezárása: stmt.close(); PreparedStatement lezárása: pstmt.close(); CallableStatement lezárása: cstmt.close(); Kapcsolat lezárása: conn.close(); 37/104
38 Bolt adatbázis alapprogram (1) 38/104
39 Bolt adatbázis alapprogram (2) 39/104
40 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 40/104
41 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés SQL kérés (STATEMENT) összeállítása Eredmények feldolgozása SQL kérés elküldése Lekapcsolódás 41/104
42 Statement A kapcsolat objektum createstatement() metódusával jön létre, és az executeupdate() vagy az executequery() paranccsal hajtható végre. Statement stmt = conn.createstatement(); Írás jellegű műveletekre: DML (INSERT, UPDATE, DELETE) és DDL (CREATE-, ALTER-, DROP TABLE) int SorDb = stmt.executeupdate("update..."); Olvasásra: Select ResultSet rs = stmt.executequery("select a, b, c FROM Table1"); 42/104
43 A JDBC programozás lépései (2) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 43/104
44 Statement használata (1) 44/104
45 Kissé életszerűbben 45/104
46 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés Az eredményhalmaz (CURSOR) rekordonkénti bejárása Eredmények feldolgozása Az értékek átadása programváltozóknak Lekapcsolódás 46/104
47 A JDBC programozás lépései (3) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 47/104
48 ResultSet használata (1) 48/104
49 ResultSet használata (2) 49/104
50 Módosítható (updateable) ResultSet (1) Statement s = conn.createstatement(resultset.type_forward_only, ResultSet.CONCUR_UPDATABLE); String sqlp = select kód, ár from termék where ár > 3000 ; ResultSet rs = s.executequery(sqlp); while (rs.next()) { } int x = rs.getint( ár ); rs.updateint( ár, (int)(x*(0.9))); rs.updaterow(); 50/104
51 Módosítható (updateable) ResultSet (2) ResultSet.TYPE_FORWARD_ONLY A ResultSet bejárása csak a legelső rekordtól, egyesével növekedve lehetséges (sor1, sor2, sor3 ) ResultSet.TYPE_SCROLL_INSENSITIVE ResultSet.TYPE_SCROLL_SENSITIVE ResultSet.CONCUR_UPDATABLE Olvasható és módosítható a ResultSet. ResultSet.CONCUR_READ_ONLY 51/104
52 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 52/104
53 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés SQL kérés (PreparedStatement) összeállítása Eredmények feldolgozása SQL kérés elküldése Lekapcsolódás 53/104
54 PreparedStatement (1) Akkor használjuk, ha egy SQL utasítást többször is végre akarunk hajtani. Előfordított SQL utasítás Ha a meghajtó támogatja az előfordítást Hatékonyabb, mint többször egy Statement-et kiadni Paraméterezhető (csak IN típusú paraméterek!) setxxx metódusok A paraméter típusának megfelelő setxxx kell! A Statement leszármazottja 54/104
55 PreparedStatement (2) A kapcsolat objektum preparestatement() metódusával jön létre, és az executeupdate() vagy az executequery() paranccsal hajtható végre. PreparedStatement pstmt = conn.preparestatement( "UPDATE table1 SET name =? WHERE id =?"); pstmt.setstring(1, "Joe"); pstmt.setlong(2, 24357); int SorDb = pstmt.executeupdate(); PreparedStatement pstmt = conn.preparestatement( " SELECT a, b, c FROM Table1 WHERE id =?"); pstmt.setint(1, 4357); ResultSet rs = pstmt.executequery(); 55/104
56 A JDBC programozás lépései (5) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy PreparedStatementet (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A PStatement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a PreparedStatement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 56/104
57 PreparedStatement (3) Alkalmazott[ ] beo =... PreparedStatement ps = conn.preparestatement( "insert into Alkalmazott" + "(Név, Fizetés, Szülidő) values (?,?,?)" ); for(int i=0; i<beo.length; i++){ ps.setstring(1, beo[i].getnév()); ps.setint(2, beo[i].getfizetés()); ps.setdate(3, date.valueof(beo[i].getszülidő())); ps.executeupdate(); } ps.close(); " " 57/104
58 Bolt Termékek 58/104
59 PreparedStatement (4) 59/104
60 Bolt Termékek (áremelés után) 60/104
61 A JDBC programozás lépései (6) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy PreparedStatementet (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A PStatement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a PreparedStatement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 61/104
62 PreparedStatement (5) PreparedStatement ps = c.preparestatement ( "select title, year_made from movies where year_made >=? and year_made <?"); for (int ev = 1920; ev < 2000; ev += 10){ } 62/104 System.out.println("=Filmek a "+ev+"-s évekből"); ps.setint(1, ev); ps.setint(2, ev+10); ResultSet rs = ps.executequery(); while(rs.next()){ } cim = rs.getstring(1); evs = rs.getint(2); System.out.println(cim+" - "+evs);
63 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 63/104
64 Az adatbázis-programozás lépései Kapcsolódás Lekérdezés SQL kérés (CallableStatement) összeállítása Eredmények feldolgozása SQL kérés elküldése Lekapcsolódás 64/104
65 CallableStatement (1) Nem-SQL utasítások, pl. tárolt eljárások végrehajtására JDBC eljáráshívási módszer { call eljárásnév [<par1>,<par2>,...] } {?= call függvénynév [<par1>,<par2>...] } Lehetnek bemeneti és kimeneti paraméterei A kimenetiek típusát regisztrálni kell végrehajtás előtt A visszaadott eredményeket (pl. ResultSet) előbb kell feldolgozni, mint a kimeneti paramétereket A PreparedStatement leszármazottja 65/104
66 CallableStatement A kapcsolat objektum preparecall() metódusával jön létre, és az execute() paranccsal hajtható végre. CallableStatement cs = con.preparecall("{call EljNév(?,?)}"); cs.setint(1, kod); cs.setstring(2, feltetel); cs.execute(); CallableStatement cs = con.preparecall("{? = call FgvNév(?)})"; cs.registeroutparameter(1, java.sql.types.integer); cs.setstring(2, feltetel); cs.execute(); out = cs.getint(1); 66/104
67 A JDBC programozás lépései (7) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy CallableStatement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A CStatement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a CallableStatement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 67/104
68 Bolt Tárolt eljárás KatNevMod nevű tárolt eljárás, mely módosítja egy paraméterként megadott kódú kategória nevét. create procedure KatNevMod (kk in char, kn varchar) as begin update Kategoria set Nev= kn where kkod= kk; end; 68/104
69 KatNevMod tárolt eljárás létrehozása 69/104
70 CallableStatement (2) KatNevMod hívása 70/104
71 CallableStatement (2) KatNevMod hívása 71/104
72 Bolt Tárolt függvény Bevetel nevű tárolt függvény, mely megadott nap bevételét adja vissza. create or replace function Bevetel (ip varchar) return int as bev int; begin select sum(ar*darab) into bev from Termek T inner join Vasarlas V on T.Tkod=V.Tkod where datum = ip; return bev; end; 72/104
73 Bevetel tárolt függvény létrehozása 73/104
74 CallableStatement (3) Bevetel hívása 74/104
75 CallableStatement (4) CallableStatement cs = conn.preparecall ( "{ call szabad_helyek(?,?,? ) }" ); IN paraméter cs.setstring(1, "MA-723"); cs.registeroutparameter(2, java.sql.types.boolean); cs.registeroutparameter(3, java.sql.types.integer); cs.execute(); // eredmények feldolgozása, ha vannak boolean dohányzó = cs.getboolean(2); int szabadhelyek = cs.getint(3); OUT paraméter OUT paraméter OUT paraméterek 75/104
76 CallableStatement (5) CallableStatement cs = conn.preparecall( "{call updateprices(?,?)}"); cs.setstring(1, "Colombian"); cs.setfloat(2, 8.49f); cs.addbatch(); cs.setstring(1, "Italian"); cs.setfloat(2, 9.49f); cs.addbatch();... IN paraméterek, batch végrehajtás cs.executebatch(); 76/104
77 CallableStatement (6) CallableStatement cs = conn.preparecall( "{call gettestdata(?,?)}"); cs.registeroutparameter(1, java.sql.types.tinyint); cs.registeroutparameter(2, java.sql.types.decimal); ResultSet rs = cs.executequery(); //... byte x = cs.getbyte(1); java.math.bigdecimal n = cs.getbigdecimal(2); OUT paraméterek 77/104
78 CallableStatement (7) CallableStatement cs = conn.preparecall("{call revisetotal(?)}"); cs.setbyte(1, (byte)25); cs.registeroutparameter(1, java.sql.types.tinyint); cs.executeupdate(); byte x = cs.getbyte(1); INOUT paraméter! 78/104
79 CallableStatement (8) public void performfunccall() { } 79/104 try { CallableStatement cs = null; double monthlysalary; cs = conn.preparecall("{? = call get_employee_salary(?)}"); cs.registeroutparameter(1,java.sql.types.integer); cs.setstring(2, "A101"); cs.execute(); monthlysalary = cs.getint(1); cs.close(); Függvény hívás System.out.println("Monthly salary is $"+monthlysalary+".\n"); IN paraméter! } catch (SQLException e) { e.printstacktrace(); }
80 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 80/104
81 Tranzakció kezelés (1) Akkor lehet rá szükség ha több logikailag összefüggő SQL utasítást szeretnénk együtt (egy blokkban, közvetlenül egymás után) végrehajtani. Ezeknek az SQL utasításoknak általában van egy logikai sorrendje. Ha bármelyik SQL utasítás meghiúsul, akkor a logikailag ráépülő többi eljárást is vissza kell vonni. Példák: 81/104 Több oldalas regisztráció, ahol minden oldalhoz tartozó adat külön SQL utasítással bekerül az adatbázisba. Ha az x. oldal után a felhasználó nyom egy mégse gombot, akkor az eddig végrehajtott SQL insert-eket is érvénytelenítenünk kell.
82 Tranzakció kezelés (2) Banki műveletek átutalás egy számláról egy másikra, vagy készpénzfelvétel az automatából: Először megterhelődik az egyik számla a kívánt összeggel, ezután jóváíródik a másik számlán, vagy kiadja az automata. Ha a második lépés meghiúsul (pl.: az automata technikai okok miatt nem tud pénzt kiadni) akkor az első műveletsort is vissza kell vonni. Ezekben az esetekben az SQL utasításokat egy tranzakcióban kezeljük. Ez a teljes tranzakció csak akkor hajtódik végre, ha mi erre a programunkból direkt felszólítjuk, egészen addig az adatbázis-kezelő elkülönítve kezeli őket. A tranzakció közben bármikor lehetőség van arra, hogy az addig kiadott SQL utasításokat érvénytelenítsük, ezzel az adatbázis visszaáll az eredeti állapotához. 82/104
83 Tranzakció kezelés (3) A tranzakciók kezelésének módját a Connection objecten a setautocommit() metódussal tudjuk megváltoztatni: connection.setautocommit(true): A JDBC alapértelmezésként ezt a beállítást alkalmazza, vagyis nem használ tranzakciókat. Ebben a módban minden egyes kiadott SQL utasítás azonnal végrehajtódik, és nem vonható vissza. connection.setautocommit(false): Ebben az esetben (AutoCommit mód kikapcsolva), az SQL utasítások tranzakciókba (csoportokba) rendezhetők, és csak akkor hajtódnak végre vagy vonódnak vissza, ha a connection-ön meghívjuk a commit() vagy rollback() metódusokat. 83/104
84 Tranzakció kezelés (4) A commit() hatására a tranzakció utasításai véglegesen bekerülnek az adatbázisba, míg a rollback() visszaállítja az adatbázist a tranzakció megkezdése előtti állapotába. SavePoint: egy köztes pontot jelöl meg egy tranzakción belül és lehetővé teszi, hogy egy tranzakció visszagördüljön addig a pontig ahelyett, hogy a teljes tranzakció visszagördüljön. Savepoint sp1 = connection.setsavepoint("sp1"); connection.rollback(sp1); 84/104
85 Tranzakció kezelés (5) Egy tranzakcióhoz több Savepoint-ot rendelhetünk. Ezek automatikusan törlődnek commit vagy teljes rollback esetében. Ha egy bizonyos Savepoint-ig gördítünk vissza, az utána definiált Savepoint-ok törlődnek. Expliciten is törölhetünk Savepoint-ot: conn.releasesavepoint(sp1); Ha egy automatikusan vagy expliciten törölt Savepoint-ra hivatkozunk, SQLException kivétel dobódik. 85/104
86 A JDBC programozás lépései (8) 1. Regisztráljuk a Driver-t a DriverManager-ben. 2. Létrehozunk egy adatbázis kapcsolatot: a DriverManager-től kérünk egy Connection-t 3. Tranzakció kezdete 4. A Connection-ben létrehozunk egy Statement-et (beállítjuk a kapcsolatot egy SQL parancs kiadására) 5. A Statement-hez hozzákapcsolunk egy SQL parancsot 6. Ha szükséges, megadjuk az SQL parancs paramétereit 7. Végrehajtjuk a Statement-et 8. Feldolgozzuk az eredményhalmazt 9. Tranzakció vége 10. Felszabadítjuk az erőforrásokat 86/104
87 Tranzakciók (2) Connection connection = DriverManager.getConnection(url, username, passwd); connection.setautocommit(false); try { statement.executeupdate(...); statement.executeupdate(...); connection.commit(); } catch (Exception e) { try { connection.rollback(); } catch (SQLException sqle) { // Hiba esetén } } finally { try { connection.close(); } catch (SQLException sqle) { } } 87/104
88 Tranzakció izolációs szintek (1) Azt határozzák meg, hogy hogyan kezelje a szerver az egyidejű hozzáférési kérelmeket (read, update, insert) ugyanahhoz az objektumhoz (tábla, rekord, ). 1. TRANSACTION_NONE: A tranzakciók nem támogatottak, nincs tranzakció kezelés. 2. TRANSACTION_READ_UNCOMMITED: Olvasáskor mindig az aktuális (módosított) értéket kapjuk, még akkor is, ha az adott insert/update tranzakciót a kezdeményező nem commit-olta. A következő problémák léphetnek fel: Dirty reads: A kiolvasott rekord értéke változhat más tranzakciók által a mi tranzakciónk ideje alatt. Tehát előfordulhat, hogy a tranzakciónk elején és végén az adott rekordban más értékek szerepelnek, holott mi nem is változtattuk, csak olvastuk 88/104
89 Tranzakció izolációs szintek (2) Non-repeatable reads: A tábla egy adott sora törlődhet a mi tranzakciónk közben. Így amikor mi a tranzakciónk elején és végén futtatunk egy-egy select-et, akkor a második esetben hiányozhatnak sorok az eredményből. Phantom reads: Hasonló az előzőhöz, csak inserttel. A táblába új sor (fantom sor) kerülhet egy másik tranzakció által miközben a mi tranzakciónk még fut. Így a tranzakciónk végén több sor lesz az adott táblában, mint amivel számolhattunk az elején 89/104
90 Anomáliák (1) Konfliktusban álló műveletek keveredése: Két írás egymás után lost update w1(x) w2(x) Olvasás két írás között dirty read w1(x) r2(x) w1(x) Írás két olvasás között non repeatable read r1(x) w2(x) r1(x) Írás két olvasás között phantom read 90/104 r1(x) w2(x) r1(x)
91 Anomáliák (2) Lost update Elveszett frissítés A= BEGIN READ(A) w1(x) w2(x) A=50 3. READ(A) A=70 4. A:= A + 20 A=80 A=70 A=80 A A:= A + 30 WRITE(A) WRITE(A) END 91/104
92 Anomáliák (3) Dirty read Piszkos olvasás (ideiglenes frissítés) A= BEGIN READ(A) w1(x) r2(x) w1(x) A=70 3. A:= A + 20 A=70 4. WRITE(A) A=70 5. READ(A) A=50 6. ROLLBACK(A) A=50 7. WRITE(A) A END 92/104
93 Anomáliák (4) Non repeatable read Nem megismételhető olvasás A= BEGIN READ(A) r1(x) w2(x) r1(x) B=20 3. READ(B) A=0 4. DELETE(A) A=50 5. SELECT(A+B) A END 93/104
94 Anomáliák (5) Phantom read Fantom olvasás 1. BEGIN r1(x) w2(x) r1(x) S= SUM(WHERE) I=20 3. INSERT(WHERE) S= SUM(WHERE) S S 5. END 94/104
95 Tranzakció izolációs szintek (3) 3. TRANSACTION_READ_COMMITED: Olvasáskor mindig az adott rekord véglegesített értéket kapjuk. Ez az esetek 99%-ra használható, a tranzakcióink mindig csak olyan rekordokat olvasnak, amik véglegesítve vannak, azaz nincs nyitott tranzakció, ami dolgozna rajtuk. A baj ezzel az, hogy ha sokan írják és olvassák az adott rekordot vagy táblát akkor könnyen kialakulhat az a helyzet, hogy az olvasó tranzakciók arra várnak hogy az írás (pl egy nagy tábla update-je) befejeződjön. Ez a főleg a rekordokra vonatkozik így csak a dirty read-től véd, probléma lehet: a non-repeatable reads, 95/104 és a phantom reads.
96 Tranzakció izolációs szintek (4) 4. TRANSACTION_REPEATABLE_READ: Ez annyival jobb a READ_COMMITTED-nél, hogy már a non-repeatable read hibát is képes kiszűrni a tranzakcióból. Egyszerűbben: csak a rekordok véglegesített értékeit használja, és a rekordok tranzakció közbeni törlése nem befolyásolja a select-eket. Ebben az esetben csak egy probléma marad: a phantom reads 96/104
97 Tranzakció izolációs szintek (5) 5. TRANSACTION_SERIALIZABLE: Annyival több a REPEATABLE_READ-től, hogy más tranzakció nem írhatja felül a mi tranzakciónk által olvasott értékeket, azaz addig várakoztatja azokat míg be nem fejeződik a tranzakciónk. Így nem fognak tranzakció közben fantom sorok keletkezni a táblában. Itt elég problémás lehet, ha több résztvevő folyamatosan olvas egy táblát, amíg az updatelő szál várakozik, mert a tábla lock-olva van és nem tud bele írni 97/104
98 Tranzakció izolációs szintek (6) Ezek szintek föntről lefelé egyre költségesebbek lesznek az adatbázisnak, így a tranzakciók végrehajtási sebessége lassul. Az izolációs szinteket a Connection objektumon a settransactionisolation() metódussal állíthatjuk be a tranzakció megkezdése előtt. Például: connection.settransactionisolation( Connection.TRANSACTION_REPEATABLE_READ); 98/104
99 Órai feladatok 1. Készítsen egy JDBC alkalmazást, mely alkalmas a következőkre: Használja a Termek táblát! 1. Készítsen egy Java metódust, mely kilistázza a képernyőre a tábla adatait. A metódus neve legyen TermekLista. 2. Készítsen egy Java metódust, mely beszúr egy beolvasott paraméterekkel megadott rekordot. A metódus neve legyen Beszur. 3. Készítsen egy Java metódust, mely kétlépcsős technikával (preparestatement) legalább 3 db, valamilyen adatszerkezetben tárolt rekordot szúr be. Az eljárás írja ki a beszúrt rekordok számát. A metódus neve legyen Beszur_2. 4. Készítsen egy Java metódust, mely módosítja egy adott Tkod-ú rekord Ár mezőjében lévő értékét (egy megadott értékre). A metódus neve legyen Modosit. 5. Készítsen menüt a programhoz, mely a TermekLista, a Beszur a Modosit és a Kilépés funkciókat kezeli. 99/104
100 Órai feladatok 2. Készítsen egy JDBC alkalmazást, mely alkalmas a következőkre: Használja a Termek táblát! 1. Készítsen egy Java metódust, melyben létrehoz egy tárolt függvényt. A függvény adja vissza egy megadható kategóriájú termék darabszámát a Termék táblából. 2. Készítsen egy Java metódust, mely lefuttatja az 1. feladatban létrehozott tárolt függvényt, és az eredményt kiírja a képernyőre. 3. Készítsen egy Java metódust, melyben létrehoz egy tárolt eljárást. Az eljárás módosítsa egy megadható kódú termék nevét (egy szintén megadható értékre) a Termék táblában. 4. Készítsen egy Java metódust, mely lefuttatja a 3. feladatban létrehozott tárolt eljárást, ezután visszaolvassa az adatbázisból, és kiírja a képernyőre az adott termék tényleges (módosítás utáni) nevét. 100/104
101 Órai feladatok 3. Készítsen egy egyetlen osztályból álló JAVA programot, mely a main metódusban kapcsolódik az Oracle szerverhez. Készítse el, és futtassa le az alábbi metódusokat: 1. Készítsen egy Java metódust, mely létrehoz egy táblát az Oracle szerveren. A táblában legyen egy KÓD mező, mely legyen numerikus, és legyen elsődleges kulcs. Legyen a táblában egy NÉV mező, és egy NUMERIKUS adatmező, melyben es nagyságrendű, két tizedes pontosságú adatokat kell tárolni. A tábla sémája [ Kulcs, Név, Num_adat ] 2. Készítsen egy Java metódust, mely beszúr egy statikus paraméterekkel megadott rekordot. 3. Készítsen egy Java metódust, mely kétlépcsős technikával legalább 3, valamilyen adatszerkezetben tárolt kódú rekordot módosít. Az eljárás írja ki a ténylegesen módosított rekordok számát. 101/104
102 Órai feladatok Készítsen egy Java metódust, mely kilistázza a képernyőre a tábla adatait. 5. Készítsen egy Java metódust, melyben létrehoz egy tárolt eljárást. A tárolt eljárás módosítja egy paraméterként kapott azonosítójú rekord numerikus mezőjében lévő értékét egy szintén paraméterként kapott értékre. 6. Készítsen egy Java metódust, mely lefuttatja az 5. feladatban létrehozott tárolt eljárást, ezután visszaolvassa az adatbázisból, és kiírja a képernyőre az adott termék tényleges (módosítás utáni) numerikus értékét. 7. A main metódusban szabadítsa fel a használt erőforrásokat! 102/104
103 Felhasznált irodalom Kovács László: Adatbázis rendszerek 2., elektronikus jegyzet Barabás Péter: Adatbázis rendszerek 2., elektronikus jegyzet Kozsik Tamás: JDBC, elektronikus jegyzet - JDBC adatbázis-hozzáférés java-ban, elektronikus jegyzet 103/104
104 VÉGE V É G E 104/104
B I T M A N B I v: T 2014.02.15 M A N
Adatbázis Rendszerek II. 7. Ea: MySQL JDBC B I v: T 2014.02.15 M A N 1/87 Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 2/87 A cél: Jávás
RészletesebbenAdatbázis Rendszerek II. 7. Oracle JDBC
Adatbázis Rendszerek II. 7. Oracle JDBC 117/1 B IT v: 2016.03.31 MAN Témakörök JAVA «-» adatbázis-kezelés JDBC alapok Statement PreparedStatement CallabeStatement Tranzakció kezelés 117/2 A cél: Jávás
RészletesebbenAdatbázis rendszerek II. V. előadás Előadó: Barabás Péter Dátum: 2008. 10. 16. 1 Java DataBase Connectivity Gazdanyelv: JAVA SQLJ (beágyazott SQL) Kiindulópont: SQL-CLI (X/Open) Hasonló az ODBC-hez nyelvi
RészletesebbenJava Programozás 10. Ea: JDBC. SQLite alapokon
Java Programozás 10. Ea: JDBC SQLite alapokon 62/1 B ITv: MAN 2018.02.05 SQLite Az SQLite önálló, fájl alapú, kisméretű, C forrású programkönyvtárként megvalósított ACID-kompatibilis relációs adatbázis-kezelő
RészletesebbenAdatbázisok webalkalmazásokban
Sapientia - EMTE, Pannon Forrás,,Egységes erdélyi felnőttképzés a Kárpát-medencei hálózatban 2010 A JDBC API A Data Access Object tervezési minta Adatforrás - DataSource JDBC architektúra A JDBC API java.sql
RészletesebbenAdatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN
Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN B IT v: 2016.02.10 MAN SQL felületek Hatékony: SQL parancsok kiadására Eredmények megtekintésére Nehézkes: Nagyobb volumenű, rutintevékenységek
RészletesebbenJava programozási nyelv 11. rész Adatbázis-programozás
Java programozási nyelv 11. rész Adatbázis-programozás Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék
RészletesebbenJDBC Adatbáziskapcsolat objektumok SQL parancsok küldése Kötegelt módosítások ResultSet Tranzakciók
JDBC adatbázis-hozzáférés java-ban JDBC JDBC API: Java nyelven íródott osztályokat és interfészeket tartalmazó csomagok, melyek egy standard API-t biztosítanak adatbázis-keretrendszerek, valamint adatbázis
RészletesebbenSZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő PHP folytatás JDBC, ODBC
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)
RészletesebbenB I T M A N B I v: T M A N
Adatbázis Rendszerek II. 6. Ea: Tranzakciók B I v: T 2014.02.15 M A N 1/39 Párhuzamosság Hasznos és kényelmes a felhasználó oldaláról Kihívás problémák a konkurens végrehajtásnál konfliktus helyzetek (azonos
RészletesebbenCREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )
Célok: a Java DB adatbázis-kezelő rendszer használatának ismertetése, adatbázisok használata Java alkalmazásokban - kétrétegű architektúra, egyszerű kliens-szerver architektúra használata hálózati alkalmazásokhoz.
RészletesebbenJava Database Connectivity (JDBC)
Java adatbázisok elérése Java Database Connectivity (JDBC) JDBC Call Level Interface (CLI): standard, ami definiálja, hogy egy program hogyan kommunikálhat egy adatbázis management rendszerrel (DBMS).
RészletesebbenSzálkezelés. Melyik az a hívás, amelynek megtörténtekor már biztosak lehetünk a deadlock kialakulásában?
Szálkezelés 1. A szekvencia diagram feladata az objektumok egymás közti üzenetváltásainak ábrázolása egy időtengely mentén elhelyezve. Az objektumok életvonala egy felülről lefelé mutató időtengely. A
RészletesebbenTémák. JDBC Adatbázisok JDBC használatának lépései Tranzakciók Adatbázis tervezés EK diagram
Adatbázis-kezelés Témák JDBC Adatbázisok JDBC használatának lépései Tranzakciók Adatbázis tervezés EK diagram A JDBC... Java API szabvány relációs adatbázisok használatához Java SE része Felhasználása
RészletesebbenAdatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN
Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN B IT v: 2016.03.03 MAN Csomagok A DBMS csomagok a PL/SQL alkalmazások fejlesztését segítik, bennük tároljuk a létrehozott programok kódjait. A specifikációs
RészletesebbenB IT MAN 43/1 B IT MAN. Adatbázis Rendszerek II. Ellenőrző kérdések JDBC. v:
B IT MAN 43/1 Adatbázis Rendszerek II. Ellenőrző kérdések D JDBC B IT MAN v: 2016.04.10 Ellenőrző kérdések 1. B IT MAN 43/2 1. Mit ír ki az alábbi kód? boolean t = true; boolean f = false; System.out.println(t&&f);
RészletesebbenProgramozási technológia
Programozási technológia Adatbáziskezelés (JDBC) Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Témák JDBC Adatbázisok JDBC használatának lépései Tranzakciók Adatbázis tervezés EK diagram A JDBC... Java
RészletesebbenKapcsolat objektumok. Válasz feldolgozása Tranzakciók DAO tervezési minta
JDBC adatbázis-hozzáférés Java-ból Áttekintés Bevezetés Kapcsolat objektumok SQL parancs küldés Válasz feldolgozása Tranzakciók DAO tervezési minta JDBC JDBC API: Java osztályokat és interfészeket tartalmazó
RészletesebbenJDBC Adatbáziskapcsolat objektumok SQL parancsok küldése Kötegelt módosítások ResultSet Tranzakciók DAO tervezési minta 1 / 45
JDBC adatbázis-hozzáférés Java-ból 1 / 45 Áttekintés Bevezetés Kapcsolat objektumok SQL parancs küldés Válasz feldolgozása Tranzakciók DAO tervezési minta 2 / 45 Áttekintés Bevezetés Kapcsolat objektumok
RészletesebbenJDBC. A JDBC alkalmazása
Áttekintés JDBC adatbázis-hozzáférés Java-ból Bevezetés Kapcsolat objektumok SQL parancs küldés Válasz feldolgozása Tranzakciók DAO tervezési minta 1 / 40 2 / 40 JDBC JDBC API: Java osztályokat és interfészeket
Részletesebbenabkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {
Adatkezelés JDBC-vel 1 abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { private JTabbedPane jtp; private JPanel dp,
RészletesebbenTranzakciókezelés PL/SQL-ben
Tranzakciókezelés PL/SQL-ben ACID tulajdonságok: Tranzakció Atomosság, Konzisztencia, Izoláció, Tartósság A tranzakció állhat: - Több DML utasításból - Egy DDL utasításból A tranzakció kezdete az első
RészletesebbenOO 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.
OO PDO PDO VS MYSQLi VS MYSQL ================================================================================ A PHP mysql metódusai elavultak, helyette lehet hazsnálni a MYSQLi metódusokat, amelyek szinte
RészletesebbenDatabase Systems II. ZH összefoglaló
Database Systems II. ZH összefoglaló 1) Kód az adatbázisban tárolva PSM CREATE PROCEDURE name(parameters) local declarations body PL/SQL CREATE (OR REPLACE) PROCEDURE name(parameters) local declarations
RészletesebbenSZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS. A MySQL adatbáziskezelő A PHP programozási nyelv JDBC, ODBC
SZÁMÍTÓGÉPES ADATBÁZIS-KEZELÉS A MySQL adatbáziskezelő A PHP programozási nyelv JDBC, ODBC ADATBÁZISOK Adatbázis = adott formátum és rendszer szerint tárolt adatok összessége. DBMS feladatai: adatstruktúra
RészletesebbenJAVA PROGRAMOZÁS 8.ELŐADÁS
Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 8.ELŐADÁS 2014-2015 tavasz Véletlen elérésű állományok; JDBC 2 Véletlen elérésű állományok A RandomAccessFile osztály 3 Közvetlen hozzáférésű
RészletesebbenAdatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben
Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Java GUI készítése, Oracle kapcsolódás JDBC-vel A jelen anyagban egy egyszerűsített megközelítéssel vizsgáljuk
RészletesebbenA 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
8] Karácsonyi Rezsô: Mechanika I. Középiskolai Tk., Nemzeti Tankönyvkiadó, Bp. 1995. 9] Paál Tamás: Mechanika II. Középiskolai Tk., Nemzeti Tankönyvkiadó, Bp. 1996. 10] Tomcsányi Péter (alk. szerk.): Fizika
RészletesebbenJava és web programozás
Budapesti M szaki Egyetem 2013. november 20. 10. El adás SQLite SQLite: Adatbázis kezel rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngész kben is használt Nehéz olyan programnyelvet
RészletesebbenAdabáziselérés ODBC-n keresztül utasításokkal C#-ban
Adabáziselérés ODBC-n keresztül utasításokkal C#-ban 1. Előkészítés Access adatbázis lemásolása, ODBC DSN létrehozása Másoljuk le az alábbiakat: Mit Honnan Hova list.mdb p:\johanyák Csaba\Vizualis programozas\data\
Részletesebben8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:
8. Gyakorlat SQL SQL: Structured Query Language; a relációs adatbáziskezelők szabványos, strukturált lekérdező nyelve SQL szabványok: SQL86, SQL89, SQL92, SQL99, SQL3 Az SQL utasításokat mindig pontosvessző
RészletesebbenSQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai
SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik
RészletesebbenIBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.
IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.kiadás IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere
RészletesebbenAdatbázisok* tulajdonságai
Gazdasági folyamatok térbeli elemzése 4. előadás 2010. 10. 05. Adatbázisok* tulajdonságai Rendezett, logikailag összefüggő és meghatározott szempont szerint tárolt adatok és/vagy információk halmaza Az
RészletesebbenAdatbázis kezelés Delphiben. SQL lekérdezések
Adatbázis kezelés Delphiben. SQL lekérdezések Structured Query Language adatbázisok kezelésére szolgáló lekérdező nyelv Szabályok: Utasítások tetszés szerint tördelhetők Utasítások végét pontosvessző zárja
RészletesebbenAdatbázisok II. Jánosi-Rancz Katalin Tünde 327A 1-1
Adatbázisok II. 1 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A 1-1 Ajánlott irodalom Ullman-Widom: Adatbázisrendszerek. Alapvetés (Második, átdolgozott kiad), Panem, 2008. november (bővítés pl.uml,
RészletesebbenSQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók
SQL*Plus Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP dolgozó), DEPT osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható táblák táblanév-prefixek:
RészletesebbenB I T M A N B I v: T 2015.03.01 M A N
Adatbázis Rendszerek MSc 2. Gy: MySQL Táblák, adatok B I v: T 2015.03.01 M A N 1/41 Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítások DCL utasítások 2/41 Az SQL jellemzése Az SQL a relációs
RészletesebbenAz SQL*Plus használata
Az SQL*Plus használata Célkitűzés Bejelentkezés az SQL*Plus-ba SQL utasítások szerkesztése Az eredmény formázása SQL*Plus utasításokkal Szkriptfájlok használata Az SQL és az SQL*Plus kapcsolata SQL*Plus
RészletesebbenAdatbázis Rendszerek II. 8. Gyakorló környezet
Adatbázis Rendszerek II. 8. Gyakorló környezet 1/24 B IT v: 2017.10.26 MAN Gyakorló környezet Géptermek 193.6.5.58:8080/apex H16_neptunkód ADMIN neptunkód 2/24 Jelszó váltás 1 2 3 4 3/24 Gyakorló környezet
RészletesebbenTartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2
Tartalomjegyzék Tartalomjegyzék 1 Az SQL nyelv 1 Az SQL DDL alapjai 2 Adatbázis parancsok 2 Táblaparancsok 2 A táblázat létrehozása 2 A táblázat módosítása 3 A tábla törlése 3 Indextábla létrehozása 3
RészletesebbenAdatbázis Rendszerek II. 2. Gyakorló környezet
Adatbázis Rendszerek II. 2. Gyakorló környezet 37/1 B IT v: 2017.02.11 MAN Gyakorló környezet Géptermek 37/2 Jelszó váltás 1 2 3 4 37/3 Gyakorló környezet II. apex.oracle.com/en/ 37/4 A regisztrációs folyamat
RészletesebbenAdatbázis használat I. 5. gyakorlat
Adatbázis használat I. 5. gyakorlat Tudnivalók Jövő hétre a normalizálást hozni vagy e- mailben beküldeni! 7. héten (= két hét múlva!) nagyzh + FF checkpoint: adattáblák feltöltése, megszorítások 2010.
RészletesebbenJava és web programozás
Budapesti Műszaki Egyetem 2015. 04. 08. 10. Előadás Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez: Ami
RészletesebbenKilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos
PASzSz Kilencedik témakör: Lazarus-Firebird Készítette: Dr. Kotsis Domokos Az SQLdb fülön IBConnection Kapcsolat A Data Access fülön Az SQLdb fülön... Select 1. Az SQLQuery lezárása. (Active := false,
RészletesebbenAdatbázis-lekérdezés. Az SQL nyelv. Makány György
Adatbázis-lekérdezés Az SQL nyelv Makány György SQL (Structured Query Language=struktúrált lekérdező nyelv): relációs adatbázisok adatainak visszakeresésére, frissítésére, kezelésére szolgáló nyelv. Születési
RészletesebbenDr. 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
Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS 2015-2016 Adatbázis alapú alkalmazások készítése PHP-ben Adatbázis alapú alkalmazás 2 A leggyakrabban használt dinamikus alkalmazások
RészletesebbenKliens oldali SQL-API
Adatbázis rendszerek I mysql SQL program API ME- GEIAL Dr. Kovács Lászl szló Üzleti logika elhelyezése adatbázis Kliens üzleti logika Nagy hálózati forgalom Decentralizált lt karbantartás Lassabb végrehajt
RészletesebbenAdatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)
Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) 23/1 B IT v: 2018.10.31 MAN DML adatokon műveletet végző utasítások DML Data Manipulation Language Rekordok (sorok) beszúrása (felvitele) Mezők
RészletesebbenMDAC - Microsoft Data Access Components
MDAC - Microsoft Data Access Components 1 ODBC Open DataBase Connectivity ODBC software API adatbáziskezeléshez. Nyelvfüggetlen, Adatbázisfüggetlen Operációsrendszer-független Standard adathozzáférés SQL
RészletesebbenJavaServer Pages (JSP) (folytatás)
JavaServer Pages (JSP) (folytatás) MVC architektúra a Java kiszolgálón Ügyfél (Böngésző) 5 View elküldi az oldal az ügyfélez View (JSP) Ügyfél üzenet küldése a vezérlőnek 1 3 4 Kérelem továbbítása a megjelenítőnek
RészletesebbenKalmár György Adatbázis alapú rendszerek
Kalmár György Adatbázis alapú rendszerek Oracle-ben az SQL utasítások feldolgozásához szükség van egy ún. kontextus memóriára, amely az összes lényeges információt tárolja egy utasítás végrehajtásához.
RészletesebbenAdatbázis Rendszerek II. 2. Ea: Gyakorló környezet
Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet 26/1 B IT v: 2018.02.21 MAN Gyakorló környezet apex.oracle.com/en/ 26/2 A regisztrációs folyamat 26/3 26/4 26/5 26/6 26/7 26/8 26/9 26/10 26/11 Feladatok
RészletesebbenADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu
ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu Számonkérés 2 Papíros (90 perces) zh az utolsó gyakorlaton. Segédanyag nem használható Tematika 1. félév 3 Óra Dátum Gyakorlat 1. 2010.09.28.
RészletesebbenAdatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER
Adatbázisok I 1 SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Módosítás: DML: - rekord felvitel INSERT - rekord törlés
RészletesebbenAdatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül
Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül Adatbázis elérés lehetőségei absztrakciós rétegen keresztül: - Open DataBase Connectivity (ODBC), közös függvényhalmaz,
RészletesebbenSZAKDOLGOZAT. Szabó Attila
SZAKDOLGOZAT Szabó Attila Debrecen 2010 Debreceni Egyetem Informatikai Kar Információtechnológiai tanszék Vállalatok pénzügyi dokumentumainak kezelőrendszer fejlesztése Java 6-ban Témavezetők Espák Miklós
RészletesebbenJava Programozás 10. Ea: JDBC. SQLite alapokon
Java Programozás 10. Ea: JDBC SQLite alapokon 104/1 B ITv: MAN 2019.04.04 SQLite Az SQLite önálló, fájl alapú, kisméretű, C forrású programkönyvtárként megvalósított ACID-kompatibilis relációs adatbázis-kezelő
RészletesebbenA relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai
8. gyakorlat Structured Query Language Struktúrált lekérdező nyelv A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai DDL (Data Definition Language) adatstruktúra definiáló
RészletesebbenAdatbázis rendszerek SQL nyomkövetés
Adatbázis rendszerek 1. 12. SQL nyomkövetés 1/32 B ITv: MAN 2017.10.26 Nyomkövetési feladat 2/32 Gyakorló feladatok Termék-Vásárlás-Vásárló Oktató-Tantárgy-Hallgató 3/32 Gyakorló feladat: Termék-Vásárlás-Vásárló
RészletesebbenMySQL kontra MongoDB programozás. SQL és NoSQL megközelítés egy konkrét példán keresztül
MySQL kontra MongoDB programozás SQL és NoSQL megközelítés egy konkrét példán keresztül Kardos Sándor sandor@component.hu Miről lesz szó? Miért érdemes őket összehasonlítani? MySQL általános jellemzői
RészletesebbenJDBC - adatbáziskezelés
Java technológiák - 10. előadás JDBC - adatbáziskezelés ANTAL Margit Sapientia - EMTE 2010 Az előadás célja JDBC API Data Access Object (DAO) tervezési minta Connection Pool DataSource JDBC API Olyan Java
RészletesebbenMegtanuljuk, 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
PHP Adatbázis Tartalomjegyzék PHP ADATBÁZIS...1 TARTALOMJEGYZÉK...1 EDDIG VOLT...1 MAI ANYAG...1 TEHÁT RÉSZLETESEBBEN...1 Kapcsolódás web-alkalmazásokból adatbázisokhoz...1 Biztonsági kérdések...2 PHP...2
RészletesebbenA 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:
1 Adatbázis kezelés 2. gyakorlat 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: Táblák létrehozása,
RészletesebbenKomponensek együttműködése web-alkalmazás környezetben. Jónás Richárd Debreceni Egyetem T-Soft Mérnökiroda KFT richard.jonas@tsoft.
Komponensek együttműködése web-alkalmazás környezetben Jónás Richárd Debreceni Egyetem T-Soft Mérnökiroda KFT Komponensek a gyakorlatban A szoftverkomponenseket fejlesztő csoportoknak szüksége van olyan
RészletesebbenAdatbázis Rendszerek II. 10. Tranzakció kezelés 72/1B IT MAN
Adatbázis Rendszerek II. 10. Tranzakció kezelés 72/1B IT MAN B IT v: 2019.02.05 MAN Párhuzamosság Hasznos és kényelmes a felhasználó oldaláról Kihívás problémák a konkurens végrehajtásnál konfliktus helyzetek
RészletesebbenSQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok
SQL jogosultság-kezelés Privilégiumok Grant és Revoke Grant Diagrammok 1 Jogosultság-kezelés Egy fájlrendszer általában jogosultságokat rendel az általa kezelt objektumokhoz. Tipikusan olvasható, írható,
RészletesebbenAz SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)
Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv) Az SQL a relációs adatbázis-kezelő rendszerek ma legelterjedtebb szabványosított adatbáziskezelő nyelve. Az IBM dolgozta ki 1983-ban,
RészletesebbenADATBÁZIS RENDSZEREK I BEADANDÓ
ADATBÁZIS RENDSZEREK I BEADANDÓ n é v : H u zynets Erik n e p t un: BJ8BDJ t a n k ö r: G2-BGI G y a k. v ezető: Smid László G y a k. időpontja: Szerda 16-18 Feladat megfogalmazása Beadandóm főként számítógépes
RészletesebbenBeszerzési logisztika támogatása az optimális beszállító kiválasztása révén
Miskolci Egyetem, Gépészmérnöki és Informatikai Kar Logisztikai Intézet Beszerzési logisztika támogatása az optimális beszállító kiválasztása révén Szakdolgozat Név: Makláry Brigitta Neptun kód: EQP49C
RészletesebbenBevezetés: az SQL-be
Bevezetés: az SQL-be Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.3. Relációsémák definiálása SQL-ben, adattípusok, kulcsok megadása 02B_BevSQLsemak
RészletesebbenTranzakció-kezelés, alapfogalmak. Vassányi István, 2012.
Tranzakció-kezelés, alapfogalmak Vassányi István, 2012. ACID tulajdonságok Tranzakció: az üzleti folyamat egy logikailag összetartozó lépéssorozata atomicity: nem valósulhat meg részlegesen consistency:
RészletesebbenAdatbázisok-1 előadás Előadó: dr. Hajas Csilla
Adatbázisok-1 előadás Előadó: dr. Hajas Csilla Áttekintés az I.zh-ig Áttekintés az 1ZH-ig // Adatbázisok-1 elıadás // Ullman (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1 Hol tartunk? Mit tanultunk
RészletesebbenDebreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL
Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL Témavezető: Dr. Bajalinov Erik Tudományos főmunkatárs Készítette: Juhász Gergely József Informatikatanári
RészletesebbenProgramozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010
Programozási technikák Pál László Sapientia EMTE, Csíkszereda, 2009/2010 12. ELŐADÁS Adatbázis-kezelés Delphiben 2 Adatmegjelenítés lekérdezés segítségével A táblákhoz hasonlóan a lekérdezések is az adatbázis
RészletesebbenAdatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17
Adatbázisok 8. gyakorlat SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT 2015. október 26. 2015. október 26. Adatbázisok 1 / 17 SQL nyelv Structured Query Language Struktúrált lekérdez
RészletesebbenVizuális programozás gyakorlat
Vizuális programozás gyakorlat A gyakorlat célja az entitás modell készítésének és az MS SQLEXPRESS használatának gyakorlása. A gyakorlat során egy könyvtári szoftver adatmodelljét tervezzük meg, valamint
RészletesebbenSQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER
Adatbázisok I SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Módosítás: DML: - rekord felvitel INSERT - rekord törlés
RészletesebbenSQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák
SQL Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák A SELECT UTASÍTÁS ÁLTALÁNOS ALAKJA (ISM.) SELECT [DISTINCT] megjelenítendő oszlopok FROM táblá(k direkt szorzata) [WHERE feltétel]
RészletesebbenADATBÁZIS-KEZELÉS FÉLÉVES FELADAT
ÓBUDAI EGYETEM Neumann János Informatikai Kar Nappali Tagozat ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT NÉV: MÁK VIRÁG NEPTUN KÓD: A DOLGOZAT CÍME: Jani bácsi székadatbázisa Beadási határidő: 14. oktatási hét
RészletesebbenII. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK
Mérési Utasítás Linux/Unix jogosultságok és fájlok kezelése Linux fájlrendszerek és jogosultságok Linux alatt, az egyes fájlokhoz való hozzáférések szabályozása érdekében a fájlokhoz tulajdonost, csoportot
RészletesebbenAdatba ziskezeles. Java tutorial JDBC. JDBC: Java Data Base Connectivity. Pelda: bro ker ceg. Rela cio s adatba ziskezeles - attekintes
Adatba ziskezeles órela cio s adatba ziskezel k ónoha a Java objektum-elvu, egyel re nem az objektum-elvu adatba ziskezel ket ta mogatja ö Vannak egyaltalan igazan muk d ilyenek? óalapelv: platform-fíggetlenseg,
RészletesebbenB IT MAN 65/1. Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN. v:
B IT MAN 65/1 Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN v: 2016.02.27 Ellenőrző kérdések 1. B IT MAN 65/2 1. Egy bemenő paraméter nélküli tárolt rutin visszaad egy értéket. Ez a rutin:
RészletesebbenAdatbázis rendszerek 7. előadás State of the art
Adatbázis rendszerek 7. előadás State of the art Molnár Bence Szerkesztette: Koppányi Zoltán Osztott adatbázisok Osztott rendszerek Mi is ez? Mi teszi lehetővé? Nagy sebességű hálózat Egyre olcsóbb, és
RészletesebbenAdatbázis használata PHP-ből
Adatbázis használata PHP-ből Adatbázis használata PHP-ből...1 Nyílt forráskódú adatbázisok...1 A mysql függvények...2 A mysqli függvények...4 Bináris adatok adatbázisban való tárolása...8 Adatbázis csatoló
RészletesebbenA 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:
1 Adatbázis kezelés 3. gyakorlat 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: Tábla kapcsolatok létrehozása,
RészletesebbenA WEB programozása - JSP1 dr.gál Tibor. 2010. őszi félév
Általános jellemzők JavaServer Pages (JSP) Java utasításokat helyezetünk el a HTML lapon Ezket a Java utasításokat a kiszolgáló végrehajtja Az ügyfél felé generált tartalom: statikus HTML kód + Java utasítások
RészletesebbenSTRUCTURED QUERY LANGUAGE(SQL) - ALAPOK
STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK Az adatbázis-kezelők elvárásai közé tartozik az, hogy legyen egy olyan adatbázis-kezelőktől független nyelv, amely az adatdefiníciós, az adatmanipulációs és a lekérdező
RészletesebbenCsomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális)
Csomagok Csomag Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll specifikáció törzs (opcionális) Csomagspecifikáció CREATE [OR REPLACE] PACKAGE csomagnév [AUTHID {DEFINER CURRENT_USER}]
RészletesebbenPHP-MySQL. Adatbázisok gyakorlat
PHP-MySQL Adatbázisok gyakorlat Weboldalak és adatbázisok Az eddigiek során megismertük, hogyan lehet a PHP segítségével dinamikus weblapokat készíteni. A dinamikus weboldalak az esetek többségében valamilyen
RészletesebbenAdatbázis-kezelés. Harmadik előadás
Adatbázis-kezelés Harmadik előadás 39 Műveletek csoportosítása DDL adat definiálás Objektum létrehozás CREATE Objektum törlés DROP Objektum módosítás ALTER DML adat módosítás Rekord felvitel INSERT Rekord
RészletesebbenEseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto
Eötvös Loránd Tudományegyetem Informatikai Kar Eseményvezérelt alkalmazások fejlesztése II 12. előadás Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto A jegyzet az ELTE Informatikai Karának 2014.
RészletesebbenAdatbázis-kezelés, információs-rendszerek
Adatbázis-kezelés, információs-rendszerek 3. Ea: Eskúel (2011) Structured Query Language v: 2011.09.05 Szűcs Miklós - ME, ÁIT. 1.o Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítás DCL utasítások
RészletesebbenJava programozási nyelv 9. rész Kivételkezelés
Java programozási nyelv 9. rész Kivételkezelés Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/24 Tartalomjegyzék
RészletesebbenTáblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1.
Táblakezelés: Open SQL Internal table Tarcsi Ádám: Az SAP programozása 1. OPEN SQL Tarcsi Ádám, ELTE SAP Excellence Center: SAP programozás oktatóanyag 2 Open SQL Az Open SQL kulcsszavai: SELECT INSERT
RészletesebbenAdatbázisok elmélete 9. előadás
Adatbázisok elmélete 9. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE
RészletesebbenPL/SQL (folytatás) Kurzorok, függvények, eljárások
PL/SQL (folytatás) Kurzorok, függvények, eljárások Kurzorok Adattábla soronkénti feldolgozására szolgál A memóriában egy munkaterületen tárolódik a kurzorhoz tartozó tábla A kurzor az eredményhalmazban
RészletesebbenHaladó DBMS ismeretek 1
Haladó DBMS ismeretek 1 Hasznos információk A tantárgy weboldala: it.inf.unideb.hu/honlap/halado_oracle1 Oracle Junior képzés Gyakorlatok és a neptun Gyakorlat követelmények Ajánlott irodalom Juhász István
RészletesebbenAdatbázis Rendszerek II. 3. SQL alapok
Adatbázis Rendszerek II. 3. SQL alapok 22/1 B IT v: 2016.10.20 MAN Oracle adattípusok Szöveges adattípusok CHAR (1-2000) VARCHAR (1-4000) VARCHAR2 (1-4000, nemzeti karakterekhez) CLOB (max. 8 TB) NCLOB
RészletesebbenAz indexelés újdonságai Oracle Database 12c R1 és 12c R2
Az indexelés újdonságai Oracle Database 12c R1 és 12c R2 Szabó Rozalinda Oracle adattárház szakértő, oktató szabo.rozalinda@gmail.com Index tömörítés fejlődése 8.1.3-as verziótól: Basic (Prefixes) index
Részletesebben