Hi. Kann mir bitte mal jemand ganz einfach erklären, wie man " und Hochkomma bei bestimmten Befehlen benutzt und warum...
Ich möchte beispielsweise ein Feld in einer Tabelle Aktualisieren.
Also folgendes Beispiel:
CurrentDb.Execute UPDATE AngebotAuftrag Set Wertung= "Voll" Where ID_Angebotauftrag=Me.ID_AngebotAuftrag
Das Feld Wertung soll einfach auf das Wort "Voll" aktualisiert werden an der Stelle wo die Datensatz ID mit einem FeldInhalt übereinstimmt. Im Beispiel habe ich mal alle " und Hochkomma' weggelassen.
Es wäre schön wenn mir das eine verständlich erklären kann, wie und wann was davon in so einer Funktion benutz wird und warum. Ich finde im Netz keine verständliche Erklärung. Was ist z.B. wenn ich das Feld mit einer Zahl füllen will oder einem aktuellen Datum oder mit dem Inhalt aus einem anderen Feld...
Besten Dank Euch schon mal.
Hallo,
den SQL-Code musst du als String maskieren, also in Gänsefüßchen setzen.
Dafür darfst du dann Strings innerhalb des SQL-Codes in Hochkommata setzen.
Umgekehrt funktioniert das nicht.
Alternativ dazu können Gänsefüßchen innerhalb eines Strings verdoppelt werden.
ZitatWas ist z.B. wenn ich das Feld mit einer Zahl füllen will
Dann lässt du die Hochkommata weg.
Zitatoder einem aktuellen Datum
Datumswerte im SQL-Statement müssen speziell formatiert werden, bspw. so:
Format(feld, "\#mm\/dd\/yyyy\#")Zitatoder mit dem Inhalt aus einem anderen Feld...
Dann schreibst du einfach den Feldnamen hin, sofern er sich in einer der im SQL-Code angesprochenen Tabellen befindet.
Variablen werden mit dem String verkettet.
Beispiel:
strSQL = "Select ... From ... Where feld=" & variable & ""Edit:
Korrekturversuch Datumsformatierung, in der Anzeige fehlen die Backslashes - wie kommt das ???
Hi,
CurrentDb.Execute "UPDATE AngebotAuftrag Set Wertung='Voll' Where ID_Angebotauftrag=" & Me.ID_AngebotAuftrag
Hallo Database,
das hast Du sehr schön erklärt. Das bringt mich ein bisschen weiter... Vielen lieben Dank dafür.
ZitatHallo Database,
das hast Du sehr schön erklärt.
Erklärt hatte ich - zumindest hatte ich es versucht - Database dagegen hat dir lediglich den korrigierten Code serviert.
Sorry, aber das musste ich grad mal eben klarstellen. ;-)
Hallo,
bei der "Erklärung" möchte ich sicherheitshalber nochmal auf die nötige Verwendung des Backslash-Zeichens beim "Lattenzaun" (#) hinweisen: ;)
Format(feld, "\#mm/dd/yyyy\#")
Ich kriege das nicht hin mit den Backslashes, die verschwinden bei der Anzeige.
In der Vorschau sehe ich sie noch. Wie kommt das denn bloß?
Hi,
könnte an der Kompatibilitätsansicht/Einstellung des Browsers liegen...
Hi,
ich benutze Firefox, keine Ahnung wonach ich da suchen muss.
Komischerweise hat es aber doch hier (http://www.access-o-mania.de/forum/index.php?topic=19896.msg110101#msg110101) und hier (http://www.access-o-mania.de/forum/index.php?topic=19896.msg110119#msg110119) funktioniert, hier (http://www.access-o-mania.de/forum/index.php?topic=19888.msg110026#msg110026) aber wiederum nicht.
Oh... Sorry MaggieMay... Der Dank geht somit natürlich auch an Dich... bzw. an Alle die immer wieder gern helfen.