Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

ADO.NET Databaser SQL Client (SQL server 7 og senere) OleDb (en række incl. jet) ODBC MySql (ekstra driver skal instaleres) Oracle (XML dataset) Samme.

Lignende præsentationer


Præsentationer af emnet: "ADO.NET Databaser SQL Client (SQL server 7 og senere) OleDb (en række incl. jet) ODBC MySql (ekstra driver skal instaleres) Oracle (XML dataset) Samme."— Præsentationens transcript:

1 ADO.NET Databaser SQL Client (SQL server 7 og senere) OleDb (en række incl. jet) ODBC MySql (ekstra driver skal instaleres) Oracle (XML dataset) Samme interface med forskellige implementeringer for de forskellige databaser. Tilknytning sker gennem connectionstring, der er forskellig for de enkelte databaser. http://www.connectionstrings.com/http://www.connectionstrings.com/

2 ADO.NET - tilgange 2 tilgangsmetoder Connection-oriented access med brug af DataReader Connectionless access med brug af Dataset og DataAdapter / XML.

3 ADO.NET – object model

4 ADO.NET - datadapter

5 ODBC opsætning

6

7 Connections System.Data.IDbConnection con; OleDb connectionName = "Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data Source=..\..\LagerSystem.mdb;" + "Jet OLEDB:Database Password=;"; con = new System.Data.OleDb.OleDbConnection(connectionName); ODBC connectionName = "DSN=LagerSystem”; con = new System.Data.Odbc.OdbcConnection(connectionName); MySql connectionName = "Database=LagerSystem;" +"Data Source=localhost;" /*127.0.0.1;" /* localhost */ +"User Id=root;" +"Password="; con = new MySql.Data.MySqlClient.MySqlConnection(connectionName);

8 Query med DataReader System.Data.IDbCommand cmd = con.CreateCommand(); System.Data.IDataReader dataReader; cmd.CommandText = "SELECT * FROM Vare"; dataReader = cmd.ExecuteReader(); while ( dataReader.Read() ) { ………………………………………….. int varenr = int.Parse(dataReader["Varenr"].ToString()); string betegnelse = dataReader["Betegnelse"].ToString(); ………………………………………….. } dataReader.Close(); /* luk forespørsel*/ con.Close();

9 Update - nonquery System.Data.IDbCommand cmd = con.CreateCommand(); int antalIndsat; string sqlString = "INSERT INTO Varebevægelse " + " (Varenr, Antal, Tidspunkt, Medarbejdernr)" + " VALUES" + " (" + varenr + "," + antal + "," + "'"+tidspunkt.ToShortDateString()+” ” + tidspunkt.ToShortTimeString()+"'," + medarbejdernr + ")"; cmd.CommandText = sqlString; antalIndsat = cmd.ExecuteNonQuery(); /*udfør SQL Update/Insert/Delete */ con.Close(); if (antalIndsat != 1) throw new Exception("Fejl ved oprettelse af varebevægelse ");

10 Update - transaction Transaktionen er bundet til en connection Startes med System.Data.IDbTransaction transaction = con.BeginTransaction(); cmd.transaction = transaction; Ved accepteret checkpoint transaction.Commit(); Ved fejl transaction.Roolback();

11 Database Provider Factory Databaseklasser kan dannes ved brug af Factory klasse der findes i ”System.Data.Common”, hvorved der kun bliver 2 strenge der er specifik for provider (er ikke implementeret for MySql) DbProviderFactory factory = DbProviderFactory.GetFactory(”System.Data.Odbc”); DbConnection con = factory.CreateCommand(); con.ConnectionString = ”DSN=LAGERSYSTEM”; Resten af db-klasser incl. Adapter og CommandBuilder kan dannes med factory-objektet

12 ODBC Connection control Opsætning af ODBC connection til visuel arbejdsmetode

13 OleDB Connection control Opsætning af OleDb connection til visuel arbejdsmetode

14 DataSet komponent

15

16 Adapter komponent tilpasses

17 DataSet komponent i Form

18 DataGridView komponent i Form

19


Download ppt "ADO.NET Databaser SQL Client (SQL server 7 og senere) OleDb (en række incl. jet) ODBC MySql (ekstra driver skal instaleres) Oracle (XML dataset) Samme."

Lignende præsentationer


Annoncer fra Google