Announcement

Collapse
No announcement yet.

SqlDataReader und ArryList

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SqlDataReader und ArryList

    hi
    ich würde gerne alles was ich mit einem SqlDataReader-Object aus der Datenbank ausgelesen habe an ein Arraylist- Object weitergeben.

  • #2
    ups
    hab die frage ja gar nicht gestellt

    weiss aber nicht so ganz wie ich das machen soll
    kann mir da vielleicht jeman helfen?
    gruß
    marti

    Comment


    • #3
      Hallo,

      wofür soll das gut sein? Ich habe nur ein Beispiel "am Lager", das die vom DataReader erhaltenen Informationen in einem ListView-Control ablegt:
      <pre>
      using System.Data.SqlClient;

      ...
      private void Button1_Click(object sender, System.EventArgs e)
      {
      // SqlCommand + SqlDataReader lesen Werte aus der Ergebnismenge aus
      string sConStr = "data source=localhost;initial catalog=Northwind;integrated security=SSPI";
      SqlConnection aCon = new SqlConnection(sConStr);
      string sSQL = "SELECT EmployeeID, LastName FROM Employees";
      SqlCommand aCmd;
      try
      {
      aCon.Open();
      aCmd = new SqlCommand (sSQL, aCon);
      SqlDataReader aDR = aCmd.ExecuteReader();
      // ListView als Ersatz für ein DataGrid verwenden
      ListView1.Clear();
      ListView1.View = View.Details;
      ListView1.Columns.Add("EmployeeID", 75, HorizontalAlignment.Left);
      ListView1.Columns.Add("LastName", 100, HorizontalAlignment.Left);
      while (aDR.Read())
      {
      ListViewItem aLVItem = new ListViewItem();
      // Wert der aktuellen Spalte des SqlDataReader-Datensatzes auslesen
      aLVItem.Text = aDR[0].ToString();
      aLVItem.SubItems.Add(aDR[1].ToString());
      ListView1.Items.Add(aLVItem);
      }
      aDR.Close();
      StatusBar1.Text = sSQL;
      }
      catch (System.Exception err)
      {
      MessageBox.Show("Exception: " + err.Message, "Oops", MessageBoxButtons.OK, MessageBoxIcon.Error);
      }
      finally
      {
      aCon.Close();
      }
      }
      </pre&gt

      Comment


      • #4
        Hallo Martin,

        hier ein Beispiel zu schreiben in eine ArrayList. In dem Fall MySQL, ist aber egal !
        ich hoffe dir ist geholfen.

        andre

        <PRE>
        private ArrayList ar_Kundendata = new ArrayList();

        .. hier die funktion zum schreiben

        private void Irgendwas()
        {
        MySQLCommand cmd = new MySQLCommand( "SELECT * FROM kunden ORDER BY nname", this.conn );
        MySQLDataReader r = cmd.ExecuteReaderEx();

        while( r.Read() )
        {
        // 37 ersetzen durch eingelesene Datensaetze oder einen anderen wert
        for( int i=0; i<=37; i++ )
        {
        this.ar_Kundendata.Add( r.GetValue(i) );
        }
        // uebergibst das array zum auslesen
        this.InsertAccessKundenData( this.ar_Kundendata );
        this.ar_Kundendata.Clear();
        }
        r.Close();
        }

        public ArrayList InsertAccessKundenData( ArrayList data )
        {
        ....
        }
        </PRE&gt

        Comment

        Working...
        X