Hallo ich habe folgendes Problem:
Ich möchte in der Tabelle "Print_Bescheid" das Feld "PB_G1_Art" mit dem Ergebnis eines selects füllen. In der Tabelle Print_Bescheid ist immer nur ein einziger Datensatz vorhanden.
Die Variable "sGeh_Art" enthält eine Zahl.
sSQL = "UPDATE Print_Bescheid " & _
"Set PB_G1_Art = (Select gehart_name from genehmigungsart WHERE gehart_nr = sGeh_Art)"
Vielen Dank fürs Drüberschaun!
Hallo,
wenn Du fehlerhaften Syntax ansprichst:
ZitatsSQL = "UPDATE Print_Bescheid " & _
"Set PB_G1_Art = (Select Top 1 gehart_name from genehmigungsart WHERE gehart_nr = '" & sGeh_Art & "')"
wobei ich von Datentyp TEXT bei der Variablen "sGeh_Art" ausgehe und die Unterabfrage nur einen DS zurückliefern darf.
Hallo und vielen Dank für die schnelle Antwort.
Der Select kann nur einen DS zurückliefern, weil gehart_Nr jeweils nur einmal vorhanden ist.
Leider bekomme ich trotzdem die Fehlermeldung "Operation muss eine aktualisierbare Abfrage verwenden".
Hallo,
ok,
Access kann das nicht. Und es scheint, als stünden die beiden Tabellen nicht in Beziehung zueinander.
Versuch dieses:
sSQL = "UPDATE Print_Bescheid, genehmigungsart " & _
"Set Print_Bescheid.PB_G1_Art = genehmigungsart.gehart_name WHERE genehmigungsart.gehart_nr = '" & sGeh_Art & "'"
oder benutze etwa dieses:
sSQL = "UPDATE Print_Bescheid " & _
"Set PB_G1_Art = " & Dlookup("gehart_name","genehmigungsart","gehart_nr = '" & sGeh_Art & "'")
Es werden alle DS in "Print_Bescheid" aktualisiert. Soll das so sein?
Nochmals vielen Dank! Die erste Variante funktioniert! Bin total happy!!!!
Echt tolles Forum!
Hallo.
wenn das ok ist würde ich mich in dieses Thema mit einklinken.
Ich würde gern in diese Update Syntax
db.Execute "UPDATE tabverben SET tabverben.YO = Replace([tabverben].[yo],'ar','o') WHERE (((tabverben.YO) Like '*ar'));"
eine Unterabfrage einfügen, die Prüft ob ein Feld "check_konj" in der gleichen Tabelle eine 0 enthält.
Leider weiß ich grad nicht wo ich da ansetzen kann :-(
Gruß
Uwe
Hallo,
wozu Unterabfrage wenn es in der gleichen Tabelle ist ?
Db.Execute "UPDATE tabverben SET YO = Replace([yo],'ar','o') WHERE YO Like '*ar' And check_konj = 0"
Oh man wieder viel zu kompliziert gedacht ^^
Danke dir