Freigeben über


Beispielanwendung zu ADO.NET

Im Folgenden finden Sie eine einfache ADO.NET-Anwendung, die Ergebnisse aus einer Datenquelle zurückgibt und die Ausgabe in die Konsole oder in die Eingabeaufforderung schreibt. Ein Großteil des Beispielcodes unter Zugreifen auf Daten mit ADO.NET kann in eine Vorlage gestellt werden, die Sie mit diesem Beispiel erstellen, um ein funktionierendes Beispiel einer bestimmten ADO.NET-Funktion zu erhalten.

Der Beispielcode zu diesem Thema zeigt die typischen Namespaces in einer ADO.NET-Anwendung. Sie finden Beispiele für den .NET Framework-Datenprovider für SQL Server (System.Data.SqlClient), den .NET Framework-Datenprovider für OLE DB (System.Data.OleDb), den .NET Framework-Datenprovider für ODBC (System.Data.Odbc) und den .NET Framework-Datenprovider für Oracle (System.Data.OracleClient). Alle Datenprovider können bei Bedarf in einer einfachen Anwendung verwendet werden.

Im folgenden Beispiel wird eine Verbindung mit der Northwind-Datenbank unter Microsoft SQL Server 2000 hergestellt und mit einem DataReader eine Liste von Kategorien zurückgegeben. Weitere Informationen über den DataReader finden Sie unter Abrufen von Daten mit dem DataReader-Objekt.

So kompilieren Sie die Beispielanwendung zu ADO.NET und führen sie aus

  1. Verwenden Sie den Editor oder einen anderen Text-Editor, um eine leere Textdatei mit dem Namen sample.vb für Visual Basic-Beispielcode oder mit dem Namen sample.cs für C#-Beispielcode zu erstellen.

  2. Kopieren Sie den Visual Basic- oder C#-Beispielcode aus diesem Thema, und fügen Sie ihn in die leere Textdatei ein. Speichern Sie die Datei.

  3. Öffnen Sie eine Eingabeaufforderung. Wählen Sie dazu im Menü Start den Befehl Ausführen, und geben Sie command ein.

  4. Wechseln Sie an der Eingabeaufforderung zu dem Verzeichnis, das die neue Textdatei enthält. Beispiel:

    cd\SampleCode\ADONETSample
    
  5. Geben Sie an der Eingabeaufforderung einen der folgenden Befehle ein, um das Beispiel zu kompilieren (der Pfad für die Datei lautet wahrscheinlich anders).

    • Verwenden Sie für Visual Basic vbc.exe und den folgenden Befehl, um auf die Systembibliotheken zu verweisen, die Sie zum Ausführen der ADO.NET-Anwendung benötigen.

      vbc.exe sample.vb /r:System.dll /r:System.Data.dll /r:System.Data.OracleClient.dll /r:System.Xml.dll
      
    • Verwenden Sie für C# csc.exe und den folgenden Befehl, um auf die Systembibliotheken zu verweisen, die Sie zum Ausführen der ADO.NET-Anwendung benötigen.

      csc.exe sample.cs /r:System.dll /r:System.Data.dll /r:System.Data.OracleClient.dll /r:System.Xml.dll
      
  6. Der Compiler erstellt eine ausführbare Datei mit dem Namen sample.exe. Geben Sie sample.exe an der Eingabeaufforderung ein, um das kompilierte Beispiel auszuführen.

SqlClient

Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports Microsoft.VisualBasic

Public Class Sample

  Public Shared Sub Main() 
    Dim nwindConn As SqlConnection = New SqlConnection("Data Source=localhost;" & _
                                                       "Integrated Security=SSPI;Initial Catalog=northwind")

    Dim catCMD As SqlCommand = nwindConn.CreateCommand()
    catCMD.CommandText = "SELECT CategoryID, CategoryName FROM Categories"

    nwindConn.Open()

    Dim myReader As SqlDataReader = catCMD.ExecuteReader()

    Do While myReader.Read()
      Console.WriteLine(vbTab & "{0}" & vbTab & "{1}", myReader.GetInt32(0), myReader.GetString(1))
    Loop

    myReader.Close()
    nwindConn.Close()
  End Sub
End Class
[C#]
using System;
using System.Data;
using System.Data.SqlClient;

class Sample
{
  public static void Main() 
  {
    SqlConnection nwindConn = new SqlConnection("Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind");

    SqlCommand catCMD = nwindConn.CreateCommand();
    catCMD.CommandText = "SELECT CategoryID, CategoryName FROM Categories";

    nwindConn.Open();

    SqlDataReader myReader = catCMD.ExecuteReader();

    while (myReader.Read())
    {
      Console.WriteLine("\t{0}\t{1}", myReader.GetInt32(0), myReader.GetString(1));
    }

    myReader.Close();
    nwindConn.Close();
  }
}

OleDb

Imports System
Imports System.Data
Imports System.Data.OleDb
Imports Microsoft.VisualBasic

Public Class Sample

  Public Shared Sub Main() 
    Dim nwindConn As OleDbConnection = New OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;" & _
                                                           "Integrated Security=SSPI;Initial Catalog=northwind")

    Dim catCMD As OleDbCommand = nwindConn.CreateCommand()
    catCMD.CommandText = "SELECT CategoryID, CategoryName FROM Categories"

    nwindConn.Open()

    Dim myReader As OleDbDataReader = catCMD.ExecuteReader()

    Do While myReader.Read()
      Console.WriteLine(vbTab & "{0}" & vbTab & "{1}", myReader.GetInt32(0), myReader.GetString(1))
    Loop

    myReader.Close()
    nwindConn.Close()
  End Sub
End Class
[C#]
using System;
using System.Data;
using System.Data.OleDb;

class Sample
{
  public static void Main() 
  {
    OleDbConnection nwindConn = new OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind");

    OleDbCommand catCMD = nwindConn.CreateCommand();
    catCMD.CommandText = "SELECT CategoryID, CategoryName FROM Categories";

    nwindConn.Open();

    OleDbDataReader myReader = catCMD.ExecuteReader();

    while (myReader.Read())
    {
      Console.WriteLine("\t{0}\t{1}", myReader.GetInt32(0), myReader.GetString(1));
    }

    myReader.Close();
    nwindConn.Close();
  }
}

Odbc

Imports System
Imports System.Data
Imports System.Data.Odbc
Imports Microsoft.VisualBasic

Public Class Sample

  Public Shared Sub Main() 
    Dim nwindConn As OdbcConnection = New OdbcConnection("Driver={SQL Server};Server=localhost;" & _
                                                         "Trusted_Connection=yes;Database=northwind")

    Dim catCMD As OdbcCommand = new OdbcCommand("SELECT CategoryID, CategoryName FROM Categories", nwindConn)

    nwindConn.Open()

    Dim myReader As OdbcDataReader = catCMD.ExecuteReader()

    Do While myReader.Read()
      Console.WriteLine(vbTab & "{0}" & vbTab & "{1}", myReader.GetInt32(0), myReader.GetString(1))
    Loop

    myReader.Close()
    nwindConn.Close()
  End Sub
End Class
[C#]
using System;
using System.Data;
using System.Data.Odbc;

class Sample
{
  public static void Main() 
  {
    OdbcConnection nwindConn = new OdbcConnection("Driver={SQL Server};Server=localhost;" +
                                                  "Trusted_Connection=yes;Database=northwind");

    OdbcCommand catCMD = new OdbcCommand("SELECT CategoryID, CategoryName FROM Categories", nwindConn);

    nwindConn.Open();

    OdbcDataReader myReader = catCMD.ExecuteReader();

    while (myReader.Read())
    {
      Console.WriteLine("\t{0}\t{1}", myReader.GetInt32(0), myReader.GetString(1));
    }

    myReader.Close();
    nwindConn.Close();
  }
}

OracleClient

Imports System
Imports System.Data
Imports System.Data.OracleClient
Imports Microsoft.VisualBasic

Class Sample

  Public Shared Sub Main() 

    Dim oraConn As OracleConnection = New OracleConnection("Data Source=MyOracleServer;Integrated Security=yes;")

    Dim oraCMD As OracleCommand = New OracleCommand("SELECT CUSTOMER_ID, NAME FROM DEMO.CUSTOMER", oraConn)

    oraConn.Open()

    Dim myReader As OracleDataReader = oraCMD.ExecuteReader()

    Do While (myReader.Read())
      Console.WriteLine(vbTab & "{0}" & vbTab & "{1}", myReader.GetInt32(0), myReader.GetString(1))
    Loop

    myReader.Close()
    oraConn.Close()
  End Sub
End Class
[C#]
using System;
using System.Data;
using System.Data.OracleClient;

class Sample
{
  public static void Main() 
  {
    OracleConnection oraConn = new OracleConnection("Data Source=MyOracleServer;Integrated Security=yes;");

    OracleCommand oraCMD = new OracleCommand("SELECT CUSTOMER_ID, NAME FROM DEMO.CUSTOMER", oraConn);

    oraConn.Open();

    OracleDataReader myReader = oraCMD.ExecuteReader();

    while (myReader.Read())
    {
      Console.WriteLine("\t{0}\t{1}", myReader.GetInt32(0), myReader.GetString(1));
    }

    myReader.Close();
    oraConn.Close();
  }
}

Siehe auch

Übersicht über ADO.NET | ADO.NET-Architektur