Zum Inhalt springen

ADO: Update-Statement erfolgreich


Patrick.Karre

Empfohlene Beiträge

Hallo Forum,

ich schreibe gerade ein kleines VB-Script das ein Update-Statement auf eine MS-SQL Tabelle ausführt. Soweit auch kein Problem. Allerdings würde ich jetzt gerne auswerten ob das Statement erfolgreich war oder nicht oder ob ein Fehler aufgetreten ist.

Über eine kurze hilfe würde ich mich freuen.

LG

Patrick

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe mittlerweile gefunden, dass die Anzahl der geänderten Zeilen zurück gegeben werden kann. Aber ich werde aus der Doku nicht wirklich schlau.

Ich schicke das Update-Statement per RecordSet mit der Methode OPEN rein. Das Update-Statment wird auch ausgeführt aber ich bekomme es nicht hin, dass ich zurück gegeben bekomme, wieviel Zeilen ein Update bekommen haben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja klar, hier ist meine Lösung:


' Version 1.07.009	PPK	2005-08-03

Option Explicit


' Connectionstring setzen

Dim ConnectString

ConnectString = "ConnectionString zum Server"


' Verbindung zur anderen Adresstabelle herstellen

Dim ADOCnn

Set ADOCnn = CreateObject("ADODB.CONNECTION")


Dim ADOCmd

Set ADOCmd = CreateObject("ADODB.COMMAND")


ADOCnn.ConnectionString = ConnectString

ADOCnn.Open


Set ADOCmd.ActiveConnection = ADOCnn


' Durch den Counter legen wir fest, wie viele Felder Anzahl und Artkelnummer es gibt. Dadurch können

' alle Felder abgefragt und überprüft werden.

Dim Counter

Counter = 1


' Wir rufen die Funktion SetFieldEntry so oft auf, bis alle Felder abgearbeitet sind.

Dim I

For I=1 to Counter

	SetFieldEntry(Counter)

Next



' Objekte entladen

Set ADOCnn = Nothing



Sub SetFieldEntry(Counter)

' SQL-Statement setzen. Das Statement führt ein Update auf das Feld Anzahl aus der Lagertabelle durch.

' Das Feld Anzahl wird bei jedem Ausführen um eine Zahl herabgesetzt.

	Dim SQL 

	SQL = "UPDATE tblAS0021 SET Anzahl=Anzahl-1 WHERE Number='30121'"


' SQL-Statement abschicken und das Ergebnis auswerten. Parallel die Verbindung von der ADO-Connection übernehmen.

	Dim RowsUpdate

	ADOCmd.CommandText = SQL

	ADOCmd.Execute RowsUpdate

	If RowsUpdate > 0 Then

		MsgBox "Es wurde(n) " & RowsUpdate & " Datensätze geändert."

	Else

		MsgBox "Artikel ist nicht in der Lagerdatenbank vorhanden!"

	End if

End Sub

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...