Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL: UPDATE-Anweisung falsch? (https://www.delphipraxis.net/7916-sql-update-anweisung-falsch.html)

Delphi-Coder 24. Aug 2003 12:45


SQL: UPDATE-Anweisung falsch?
 
Hallo,

ich habe den SQL Server 2000 und mein Programm über ADO an diesen angebunden! Nun habe ich eine Update-Anweisung, welche aber nicht richtig funktioniert! Nur was ist falsch?

Anweisung:
SQL-Code:
UPDATE anrede SET anrede="'+EditAnrede.Text+'" WHERE anrede_id='+Table1anrede_id.asString+'
...und der Fehler: ungültiger Feldname

Vielen Dank für eure Hilfe!

Delphi-Coder

JoelH 24. Aug 2003 12:51

hmm,
 
UPDATE anrede SET anrede ...

heisst die Tabelle anrede und das Feld auch anrede ? hast du dien String mal ausgegeben lassen ob da auch alles richtig eingebaut wird ?

r_kerber 24. Aug 2003 13:04

Re: SQL: UPDATE-Anweisung falsch?
 
Hallo Delphi-Coder,

mich interessieren, ob Du den Text so in die Eigenschaft "SQL" eingetragen hast? Das würde dann so nicht funktionieren.
Ansonsten weiß ich nicht, ob die DB die Gleichheit von Tabellennamen und Spaltennamen verkraftet.

OK vergiß den ersten Teil

Delphi-Coder 24. Aug 2003 13:16

Re: SQL: UPDATE-Anweisung falsch?
 
Die Tabelle hat den Namen anrede und das Feld auch! Die komplette Query-Anweisung sieht so aus:

Delphi-Quellcode:
Query1.Sql.Add('UPDATE anrede SET anrede="'+EditAnrede.Text+'" WHERE anrede_id='+Table1anrede_id.asString+'');
Normalerweise wird der String schon richtig eingebaut! Hatte es vorher auf ner anderen DB-Form laufen (TurboDB) und da ging es!

EDIT: An der doppelten Benennung kann es nicht liegen! Hab es gerade ausprobiert und der Fehler wird immernoch angezeigt!

Delphi-Coder 24. Aug 2003 15:00

Re: SQL: UPDATE-Anweisung falsch?
 
Ich hab den Fehler gefunden!!! :bounce1: :bounce2: :hello:

Anstatt:
Delphi-Quellcode:
Query1.Sql.Add('UPDATE anrede SET anrede="'+EditAnrede.Text+'" WHERE anrede_id='+Table1anrede_id.asString+'');
muss es so aussehen:
Delphi-Quellcode:
Query1.Sql.Add('UPDATE anrede SET anrede='+QuotedStr(EditAnrede.Text)+' WHERE anrede_id='+Table1anrede_id.asString+'');

Trotzdem Danke für eure Hilfe!

r_kerber 24. Aug 2003 15:48

Re: SQL: UPDATE-Anweisung falsch?
 
Jetzt wo Du das schreibst, muß ich Dir recht geben. :oops:

MrSpock 24. Aug 2003 16:16

Re: SQL: UPDATE-Anweisung falsch?
 
Hallo DelphiCoder,

noch ein Hinweis: doppelte Anführungszeichen für Strings sind nur im SQL Dialekt 1 erlaubt, im Dialekt 3 dürfen nur noch einfache verwendet werden.

Hansa 24. Aug 2003 16:28

Re: SQL: UPDATE-Anweisung falsch?
 
Hier noch etwas zu den "QuotedStrings":

Zitat:

Zitat von Jeff Overcash
Just don't create objects in mixed case (IOW create them without quotes).

Es geht um die Groß- und Kleinschreibung. Das Thema sehe ich sehr oft. Seit ich mir angewöhnt habe, alles was mit SQL zu tun hat, wirklich alles GROß zu schreiben :mrgreen: , habe ich mit so was keinen Ärger mehr. Das Zitat habe ich heute morgen zwar erst gefunden, aber der Effekt im eigenen Programm war unübersehbar.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz