Announcement

Collapse
No announcement yet.

SQLDataAdapter automatisch konfigurieren für eine Ansicht

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

  • SQLDataAdapter automatisch konfigurieren für eine Ansicht

    Ich arbeite mit VS Studio 2003 und MSDE.

    Wenn man eine Tabelle im Server-Explorer erstellt hat und diese auf ein Formular zieht, wird der<BR>
    SQLDataAdapter automatisch konfiguriert, sprich Insert,Update,Select & Delete Command werden angelegt.<BR>
    Nun hab ich ein View erstellt und wollte nun ebenfalls diesen Weg gehen.<br>
    Leider bringt er mir die Fehlermeldung:
    <BR>
    <br>
    "Es konnte nicht festgestellt werden, welche Spalten die Zeilen für "View" eindeutig definieren."
    <br>
    <br>

    Was muss ich beachten das die automatische Konfiguration funktioniert?<br> Ich will daraus später noch
    ein typed dataset machen.<br>Ist diese Vorgehensweise bei Views überhaupt nicht möglich?

  • #2
    Hallo,

    der DataAdapter kann diese Anweisungen nur für Basistabellen, aber nicht für Sichttabellen erzeugen. Der Zugriff über den VIEW ist aber auch gar nicht notwendig, da derartiges direkt im DataSet (offline) erledigt werden kann. Im DataSet werden dazu nur die benötigten Datenmengen der zugrundeliegenden Basistabellen abgelegt.

    Wenn aus Rechtegründen das direkte Hantieren mit den Basistabelle nicht erlaubt ist, steht alternativ der Weg über Stored Procedure zur Verfügung

    Comment


    • #3
      Hallo Herr Kosch,<br><br>

      ich habe mir nun inzwischen mittels des DataSet-Designers ein Dataset aus den Basistabellen gebaut.<br>
      Nun wollte zu diesem Dataset <b>ein</b> DataAdapter über den Designer basteln.<br>
      Er sollte den Zugriff über SP's durchführen. Jedoch kommt nun am Ende diese Fehlermeldung:<br><br>

      Die ursprüngliche Abfrage hat eine Liste mit Spalten von mehreren Tabellen.<br>
      Die Anweisung kann nicht automatisch für diese Art von Abfrage generiert werden. <br><br>

      Bedeutet dies das ich für jede Tabelle im DataSet ein eignen DataAdapter generieren muss?<br>
      Mir ist irgendwie noch nicht ganz klar, wie die Daten in ein DataSet kommen, welches
      in sich viele Datenbanktabellen vereint

      Comment


      • #4
        Hallo,

        &gt;..ein eignen DataAdapter generieren muss?

        Ja - jeder SqlDataAdapter ist nur für eine Tabelle zuständig.

        &gt;..wie die Daten in ein DataSet kommen, welches in sich viele Datenbanktabellen vereint.

        Das folgende Beispiel demonstriert diesen Fall:
        <pre>
        Private Sub Form3_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DataSetKomplex31.EnforceConstraints = False
        SqlDataAdapter1.Fill(DataSetKomplex31)
        SqlDataAdapter2.Fill(DataSetKomplex31)
        SqlDataAdapter3.Fill(DataSetKomplex31)
        SqlDataAdapter4.Fill(DataSetKomplex31)
        DataSetKomplex31.EnforceConstraints = True
        StatusBar1.Text = "DataSet wurde gefüllt."
        End Sub
        </pre&gt

        Comment


        • #5
          Habe es hinbekommen. Vielen Dan

          Comment

          Working...
          X