![]() |
Update SQLs
Schönen guten Morgen zusammen,
ich muss für 2 Tabellen eine Update SQL schreiben. Problem: die SQL muss ich je ca. 40 mal ändern. Erst einmal eine dieser SQL:
Delphi-Quellcode:
und
Update Table1
SET Kunde = 'Kunde1' WHERE PORTFOLIO LIKE ('Kunde1%')
Delphi-Quellcode:
Damit wäre 1 Kunde eingefügt. Das Ganze läuft für ca. 40 Kunden. Sprich 80 SQLs???
Update Table2
SET FELD72_TXT = 'Kunde1' WHERE CAST(DEPOT as CHAR(10)) LIKE ('0815%') OR CAST(DEPOT as CHAR(10)) LIKE ('0816%') OR CAST(DEPOT as CHAR(10)) LIKE ('0817%') Kann mir jemand helfen, wie ich das möglichst geschickt löse? Auch gerne ohne die Update SQL. (1 SQL läuft momentan ca. 2 Minuten :cry: ) Danke |
Hallo,
Du musst nicht 80 SQL's schreiben. Das wäre auch viel zu starr. Verwende doch Paramter. |
Hallo,
so ein ähnliches Problem hatten wir schon einmal, ![]() |
Re: Update SQLs
hallo.
hab auch gerade ein problem mit einer sql abfrage:
Delphi-Quellcode:
wobei %such% eine variable vom typ string ist.
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like %such%';
ich möchte praktisch einen string eingeben, z.b. 'erl' und die suche soll mir alle namen ausgeben in denen 'erl' vorkommt. statisch geht das ja ganz gut.
Delphi-Quellcode:
hat jemand nen tipp?
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%erl%"';
|
Re: Update SQLs
Zitat:
Delphi-Quellcode:
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%"+Edit1.Text+"%"';
|
Re: Update SQLs
Man sollte bei Suchbegriffen, welche aus Anwendereingaben direkt in Queries übernommen werden, IMMER die Funktion QuotedStr() einsetzen. Damit werden zusätzliche Anführungszeichen in der Benutzereingabe maskiert und der Text insgesamt in Hochkommas gesetzt.
:coder: |
Re: Update SQLs
Wieso brauche ich aber nie welche ? :shock: Das scheint an der Groß/Kleinschreibung zu liegen. So wurde mir jedenfalls von Borland mitgeteilt. Die haben gesagt: "wird ALLES groß oder klein geschrieben, so braucht man die Hochkommas nicht !". Seitdem schreibe ich alles, was mit SQL zu tun hat groß und das wars echt. Zumindest bei Interbase.
|
Re: Update SQLs
Ich hab' auch SUCHBEGRIFFE gemeint, welche der Anwender eingibt und nicht SQL-Anweisungen. Der Tipp von Borland bezieht sich auf Feld- und Tabellennamen.
:coder: |
Re: Update SQLs
Zitat:
|
Re: Update SQLs
hab hilfe von einem anderen user bekommen.
hatte bisher:
Delphi-Quellcode:
die zeile muss aber so aussehen:
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%"+ed_such.text+"%"';
Delphi-Quellcode:
anstatt " muss ' stehen. so funzts :thuimb:
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%'+ed_such.text+'%"';
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:23 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