Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Sicherheitshinweis ---> für registrierte Mitglieder <-
Problem mit db.Execute Update
zurück: SQL Server Management Studio Express 2008 Tabelle festlegen weiter: ADP in ACCDB importiert - MSSQL - Verbindung fehlt noch Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Jonny80
Einsteiger


Verfasst am:
19. Jan 2014, 16:15
Rufname:

Problem mit db.Execute Update - Problem mit db.Execute Update

Nach oben
       Version: Office 2003

Hallo zusammen,

leider komme ich seit zwei Tagen nicht weiter mit meinem Anfängerwissen und auch die SuFu hat nicht das gewünschte Ergebnis gebracht. Daher wende ich mich Hoffnungsvoll an euch.

Ich lasse per Excel Liste Daten in eine Access DB schreiben. Das klappt bereits auch Prima, aber wenn sich Daten geändert haben, schaffe ich es nicht den vorhandenen Datensatz zu aktualisieren.

Zum Schreiben nutze ich aktuell folgenden Code:
Code:
Option Explicit
Const TabList = " (ID Text(65), Feld1 Text(60), Feld2 Text(55)" _
              & ", Feld3 Text(50), Feld4 Text(45), Feld5 Text(40)" _
              & ", Feld6 Text(35), Feld7 Text(30), Feld8 Text(25)" _
              & ", Feld8 Text(20));"
Const ListTab = " (ID, Feld1, Feld2, Feld3, Feld4, Feld5, Feld6, Feld7" _
              & ", Feld8, Feld9)"
'*********** Verweise *********
'***** 1.) Access XXX ******
'***** 2.) DAO xxx *******

Sub Einfügen()
    Dim db As Access.Application
    Dim TB As DAO.Database
    Dim Intro As String
    Dim Tabelle, GName, VarList, TaName
   
    Set db = CreateObject("Access.Application") ' Objekt erstellen
    TaName = "AccessTabelle2"
    Tabelle = "CREATE TABLE " & TaName & TabList ' Tabelle erstellen
    db.OpenCurrentDatabase ("C:\Test\AccessDaten.mdb") ' Datenbank öffnen
    Set TB = db.CurrentDb ' Tabelle eintragen
    'TB.Execute Tabelle 'aktivieren wenn die Tabelle Neu erstellt werden soll
    ' TAbelle füllen
    VarList = " VALUES ('" & Sheets("Tabelle2").Range("a2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("b2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("C2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("D2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("E2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("F2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("G2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("H2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("I2") & "'" _
                   & ", '" & Sheets("Tabelle2").Range("J2") & "')"
    Intro = "INSERT INTO " & TaName & ListTab & VarList
    TB.Execute Intro
    TB.Close
    db.CloseCurrentDatabase
End Sub
Nun muss ich dazu sagen, dass in der Excel Liste unter A2 der Username eingetragen wird und in der DB wird dieser als Primärschlüssel genutzt.

Ich komme einfach nicht weiter, dass wenn ich irgendeine Zelle im Bereich B2:J2 ändere dieses auch in der DB aktualisiert wird. Aktuell wenn ich diesen Code nutze bleiben die ersten Werte bestehen und es ändert sich nix Sad

Wer kann mir bitte hier weiterhelfen?

Gruß
Jonny
Bitsqueezer
Office-VBA-Programmierer


Verfasst am:
20. Jan 2014, 16:47
Rufname:


AW: Problem mit db.Execute Update - AW: Problem mit db.Execute Update

Nach oben
       Version: Office 2003

Hallo,

und was hat Deine Frage mit der Kategorie "MS Access und SQL Server" zu tun....?

Du solltest Dich zunächst mal mit den SQL-Grundlagen befassen, dann würde die Frage gar nicht aufkommen. Mit einfachem Englisch kann man aber auch dahinterkommen, daß ein Code, der lediglich ein INSERT ausführt, logischerweise nur etwas EINFÜGEN kann, aber nicht aktualisieren, was dann UPDATE wäre. Und damit UPDATE auch weiß, in welcher Zeile, braucht es eine Bedingung, also WHERE, in der man die Zeile in der Tabelle angibt, die geändert werden soll. Und Username als Primärschlüssel ist üblicherweise kein guter PK, aber das mußt Du selbst wissen.

Wenn Du Dich also mal mit UPDATE befaßt, kommst Du sicher dahinter, was Du tun mußt.

Gruß

Christian
Gast



Verfasst am:
21. Jan 2014, 00:42
Rufname:

AW: Problem mit db.Execute Update - AW: Problem mit db.Execute Update

Nach oben
       Version: Office 2003

Hallo,

das ich Update benutzen muss ist mir schon bewusst (siehe Titel), jedoch komme ich genau damit nicht weiter
Code:
    TB.Execute "UPDATE AccessTabelle2" _
               & " SET [ID] = '" & Environ("Username") & "';" _
            & "& WHERE [FELD4] = '" _
                           & Worksheets("Tabelle2").Cells(2, 5).Value & "';" _
              , dbFailOnError
Er wirft mir immer als Fehler aus:
Zitat:
Laufzeitfehler '3142' Zeichen nach Ende von SQL-Anweisung gefunden.
Was mache ich bei diesem Code falsch?

Gruß
Jonny
Bitsqueezer
Office-VBA-Programmierer


Verfasst am:
21. Jan 2014, 11:19
Rufname:


AW: Problem mit db.Execute Update - AW: Problem mit db.Execute Update

Nach oben
       Version: Office 2003

Hallo,

und wiederum: Warum postest Du einen Code, der einen INSERT ausführt, wenn Du eine Frage zu einem Code hast, der einen UPDATE ausführt? Macht nicht wirklich Sinn, oder?

Am einfachsten kommt man dahinter, wenn man den String, den man ausführen möchte, einfach mal im Direktfenster ausgibt. Also ändere mal "TB.Execute" in "Debug.Print" und nimm den Parameter am Ende weg, dann kommt sowas dabei raus:
Code:
UPDATE AccessTabelle2 SET [ID] = 'Jonny';& WHERE [FELD4] = '';
Den Fehler hier zu finden, sollte nicht so schwer sein.

Gruß

Christian
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Microsoft Access und MS SQL Server: TRIGGER INSTEAD OF UPDATE 3 Trigger_Problem 974 02. März 2012, 13:49
Bitsqueezer TRIGGER INSTEAD OF UPDATE
Keine neuen Beiträge Microsoft Access und MS SQL Server: Upate db.execute funktioniert nicht immer - 2 ticonh 910 11. Jan 2012, 09:27
ticonh Upate db.execute funktioniert nicht immer -
Keine neuen Beiträge Microsoft Access und MS SQL Server: Trigger UPDATE in Fremdtabelle 1 SQL_Server_2008 938 09. Nov 2011, 12:24
Gast Trigger UPDATE in Fremdtabelle
Keine neuen Beiträge Microsoft Access und MS SQL Server: Behandlung von Sonderzeichen bei SQL-Anweisung UPDATE 2 Cornelius Kirchenpauer 1162 31. Okt 2011, 18:20
Gast Behandlung von Sonderzeichen bei SQL-Anweisung UPDATE
Keine neuen Beiträge Microsoft Access und MySQL: Update Anweisung 3 Gast_123 1868 17. Jun 2010, 08:38
Gast_123 Update Anweisung
Keine neuen Beiträge Microsoft Access und MySQL: Update Anweisung schlägt fehl 1 Heini_net 1590 21. März 2010, 20:19
Gast Update Anweisung schlägt fehl
Keine neuen Beiträge Microsoft Access und MS SQL Server: Update SQL Statement in Access 1 UweAtze 2525 09. Feb 2010, 21:31
Robsl Update SQL Statement in Access
Keine neuen Beiträge Microsoft Access und MS SQL Server: Kein Update mehr möglich in Access97 1 holgics 1103 18. Jan 2010, 12:17
Bitsqueezer Kein Update mehr möglich in Access97
Keine neuen Beiträge Microsoft Access und MySQL: ODBC recordset Update schlägt fehl 1 radelrutscher 4575 21. Jun 2008, 00:23
derArb ODBC recordset Update schlägt fehl
Keine neuen Beiträge Microsoft Access und MS SQL Server: Update - Typenkonvertierung 2 accessuser 477 16. Mai 2008, 13:21
accessuser Update - Typenkonvertierung
Keine neuen Beiträge Microsoft Access und MS SQL Server: Trigger bei Insert und Update für Spaltenberechnung 1 powerbiker 9780 06. Jun 2007, 16:12
Gast Trigger bei Insert und Update für Spaltenberechnung
Keine neuen Beiträge Microsoft Access und MySQL: update einer Tabelle von MySQL auf Access? 2 marco_de 2864 14. Jul 2005, 13:56
ATeubel update einer Tabelle von MySQL auf Access?
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Expression Web Forum