Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Alkalmazásfejlesztés gyakorlat
Active Data Objects .NET
2
Natív .NET adatszolgáltatók
A leghatékonyabb Két különböző adatforrás között adatcserére nem alkalmas Beépített natív adatszolgáltatók Microsoft SQL Server részére Oracle részére System.Data.SqlClient
3
ODBC.NET A kliensalkalmazások ugyanazzal az utasításkészlettel dolgoznak adatforrástól független A kliens és az adatb. egy rétegen keresztül kommunikál egymással Csak relációs adatokra korlátozódik System.Data.ODBC
4
OLEDB.NET A Microsoft 1997-ben vezette be A COM technológiát használja
Nem csak relációs adatok elérése (XML, MS Doc, ….) System.Data.OleDb
5
SQLite használata .NET alatt
Szükség van egy ADO.NET provider-re Mi a System.Data.SQLite projectet használjuk Ez ADO.NET 3.5 kompatibilis, open source project Telepíthető verzió: designer támogatás VS alatt! Saját projektünkhöz hozzá kell adni Solution Explorer | References jobb klikk Add Reference… Browse System.Data.SQLite.dll (kulso\cs) Ez csak a .NET és az SQLite közötti kapocs, nem a szerver! Szerver: kulso\cs\sqlite3.dll nem managed DLL, nem lehet referenciát adni hozzá (C-ben írták) Helyette: Project | Add Existing Item… sqlite3.dll Properties ablakban: sqlite3.dll Copy to Output Directory Copy if newer ez garantálja hogy build után elérhető
6
System.Data.Xxx XxxConnection XxxCommand XxxDataReader
adatbázis-kapcsolatot reprezentál Connection string: new OleDbConnection(”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=bank.mdb”); XxxCommand SQL parancsokat reprezentál ExecuteReader(), ExecuteNonQuery(), ExecuteScalar() XxxDataReader Lekérdezés eredményének előrehaladó bejárása Xxx = Odbc, OleDb, Sql, Oracle (, Sqlite, …)
7
System.Data.SQLite Kapcsolat létrehozása SQL parancs létrehozása
using (SQLiteConnection conn = new SQLiteConnection()) SQL parancs létrehozása SQLiteCommand com = conn.CreateCommand(); com.CommandText = „… sql parancs …”; SQL parancs végrehajtása com.ExecuteReader() SELECT-hez SQLiteDataReader com.ExecuteScalar() SELECT-hez 1 db object com.ExecuteNonQuery() egyéb parancsokhoz Előtte mindig figyeljünk arra hogy megnyissuk a connection-t (Open())!!! SQLiteDataReader feldolgozása Read() léptet true, ha van még feldolgozatlan sor Get(int) vagy indexer [„oszlopnév] object-et ad vissza Lezárás using elintézi A többi adatbázis verziónál is ugyanez a séma
8
10-cs-GUI-DB Nyissuk meg a solutiont
Fordítsuk és futtassuk az alkalmazást! Nézzük meg a megvalósított menüpontokat! New Book és List Books Vizsgáljuk meg az új kódot! Book.cs a könyv adatokat tartalmazó osztály BookShopController.cs műveletek logikája BuyBookDialog.cs új könyv vásárlása BookShopGui.cs eseménykezelés + táblázat Ami igazán új: BookShopDaoDb.cs DB kezelés
9
Feladat Ügyfél adatbázis műveleteinek megvalósítása
Úgy ahogy könyveknél meg lett valósítva BookShopDaoDb osztályban kell módosítanunk AddCustomer() beszúrás paraméteresen GetCustomers() ügyfélek lekérése Írjunk egy Customer FindCustomerByName (SQLiteConnection, Customer) metódust is Ügyfelek beszúrásánál figyeljünk a névegyezésre! Ügyfelek listázása: DataGridView segítségével jelenítsük meg táblázatos formában a főablakban!
10
Linkek ADO .NET provider SQLite engine-hez
Connection string-ek SQLite alatt (is) SQLite Administrator GUI tool Egy kis magyarázat az órai példákhoz /pub/Alkalmazasfejlesztes/gyakorlat/nappali/kiegeszito_anyagok/alkfejl_07.pdf
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.