vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
Datensatzsuche in einer zweiten Tabelle 
Autor: ThA
Datum: 06.05.13 16:48

Hallo

Ich möchte in einer Produkteverwaltung wissen, welche neuen Produkte in der Produkte-Tabelle bereits vorhanden sind (bzw die Negation davon):

Ich habe folgeden Code vb2010:
 
 
  'Die neuen Produkte anzeigen
    Private Sub NeueDatensätzeToolStripMenuItem_Click(ByVal sender As _
      System.Object, ByVal e As System.EventArgs) Handles _
      NeueDatensätzeToolStripMenuItem.Click
        Me.Text = "Neue Datensätze in der LIVE-DB: Voransicht"
 
        'Dim objCommandBuilder As OleDbCommandBuilder
        Dim cmd As OleDbCommand
        Dim Ergebnis As Integer
 
        Conn.Open()
        Try
            cmd = New OleDbCommand("SELECT * " & _
                                    "FROM Neue_Produkte " & _
                                    "WHERE artnr  IN (SELECT artnr FROM" & _
                                    "Produkte)", Conn)
            'cmd = New OleDbCommand("SELECT neue_produkte.artnr " & _
            '      "FROM (Neue_Produkte) " & _
            '      "LEFT JOIN Produkte ON Neue_Produkte.artnr = " & _
            '      "Produkte.artnr " & _
            '      "WHERE Produkte.artnr Is Null", Conn)
            Ergebnis = cmd.ExecuteNonQuery()   '<=================
            MessageBox.Show("Anzahl Sätze neuer Datensätze: " & Ergebnis & _
              vbCrLf & "Das ist aber nicht korrekt !!!")    '??? das ist nicht 
            ' korrekt !!!!! ????
 
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        Finally
            Conn.Close()
        End Try
 
        'Daten aus dem Import anzeigen
        Dim sqlDataViewGrid As String = "SELECT * " & _
                                        "FROM Neue_Produkte " & _
                                        "WHERE artnr IN (SELECT artnr FROM" & _
                                        "Produkte)"
        'Dim sqlDataViewGrid As String = "SELECT neue_produkte.artnr " & _
        '            "FROM (Neue_Produkte) " & _
        '            "LEFT JOIN Produkte ON Neue_Produkte.artnr = " & _
        '            "Produkte.artnr )"  ' & _
        '            "WHERE Produkte.artnr Is Null)"
 
        InitializeDataGridView(sqlDataViewGrid)  'Daten anzeigen
 
    End Sub
Eine Produkt (ArtNr) ist in beiden Tabellen vorhanden.
Ergebnis = cmd.ExecuteNonQuery() liefert mir 0 Datensätze zurück.
Am Schluss lass ich mir die Daten anzeigen: da wird mir ein Datensatz angezeigt (was korrekt ist).

Wieso werden zwei verschiedene Ergebnisse geliefert? Die beiden SQL-Abfragen sind gleich.

Danke und Gruss, Thomas
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Datensatzsuche in einer zweiten Tabelle2.102ThA06.05.13 16:48
Re: Datensatzsuche in einer zweiten Tabelle1.137Preisser06.05.13 17:05
Re: Datensatzsuche in einer zweiten Tabelle1.181ThA06.05.13 17:18

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel