AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Update SQLs

Ein Thema von Mauli · begonnen am 29. Apr 2003 · letzter Beitrag vom 27. Okt 2003
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Mauli
Mauli

Registriert seit: 7. Apr 2003
Ort: Wuppertal
160 Beiträge
 
Delphi 2005 Enterprise
 
#1

Update SQLs

  Alt 29. Apr 2003, 10:05
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:
Update Table1
SET Kunde = 'Kunde1'
WHERE PORTFOLIO LIKE ('Kunde1%')
und

Delphi-Quellcode:
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%')
Damit wäre 1 Kunde eingefügt. Das Ganze läuft für ca. 40 Kunden. Sprich 80 SQLs???

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 )

Danke
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#2
  Alt 30. Apr 2003, 07:08
Hallo,
Du musst nicht 80 SQL's schreiben. Das wäre auch viel zu starr.
Verwende doch Paramter.
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#3
  Alt 30. Apr 2003, 08:53
Hallo,
so ein ähnliches Problem hatten wir schon einmal,Mehrere Suchbegriffe in einem Datensatz suchen dort gibt es auch verschiedene Varianten mit/ohne Parameter.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
markon

Registriert seit: 12. Sep 2003
229 Beiträge
 
#4

Re: Update SQLs

  Alt 17. Okt 2003, 10:29
hallo.
hab auch gerade ein problem mit einer sql abfrage:
  DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like %such%'; wobei %such% eine variable vom typ string ist.

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.
  DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%erl%"'; hat jemand nen tipp?
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

Re: Update SQLs

  Alt 17. Okt 2003, 10:35
Zitat von markon:
hallo.
hab auch gerade ein problem mit einer sql abfrage:
...
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.
Ich mache das so:

DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%"+Edit1.Text+"%"';
Gruß
Hansa
  Mit Zitat antworten Zitat
Alfons_G

Registriert seit: 7. Jun 2002
Ort: München
296 Beiträge
 
Delphi 2007 Architect
 
#6

Re: Update SQLs

  Alt 20. Okt 2003, 15:15
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.

Alfons Grünewald



Alfons Grünewald
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#7

Re: Update SQLs

  Alt 20. Okt 2003, 16:55
Wieso brauche ich aber nie welche ? 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.
Gruß
Hansa
  Mit Zitat antworten Zitat
Alfons_G

Registriert seit: 7. Jun 2002
Ort: München
296 Beiträge
 
Delphi 2007 Architect
 
#8

Re: Update SQLs

  Alt 21. Okt 2003, 09:06
Ich hab' auch SUCHBEGRIFFE gemeint, welche der Anwender eingibt und nicht SQL-Anweisungen. Der Tipp von Borland bezieht sich auf Feld- und Tabellennamen.

Alfons Grünewald



Alfons Grünewald
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#9

Re: Update SQLs

  Alt 21. Okt 2003, 09:33
Zitat von Alfons_G:
Ich hab' auch SUCHBEGRIFFE gemeint, welche der Anwender eingibt und nicht SQL-Anweisungen. Der Tipp von Borland bezieht sich auf Feld- und Tabellennamen.
Dann gibts ja auch noch UpCase und dann wird das ganze wohl perfekt, oder nicht ? Völlig ohne Hochkommas und QuotetStrings.
Gruß
Hansa
  Mit Zitat antworten Zitat
markon

Registriert seit: 12. Sep 2003
229 Beiträge
 
#10

Re: Update SQLs

  Alt 23. Okt 2003, 15:18
hab hilfe von einem anderen user bekommen.
hatte bisher:
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%"+ed_such.text+"%"'; die zeile muss aber so aussehen:
DM_Tabelle.adoquery3.sql.text := 'select * from tabelle1 where name like "%'+ed_such.text+'%"'; anstatt " muss ' stehen. so funzts
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz