Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Dringend: SQL Server funktioniert, aber Grid zeigt nix! (https://www.delphipraxis.net/125806-dringend-sql-server-funktioniert-aber-grid-zeigt-nix.html)

lnaemi 12. Dez 2008 07:38

Datenbank: Oracle • Version: ??? • Zugriff über: SQl-String

Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
GEstern wurde das Programm getestet. man hat festgestellt, dass die suche nicht wirklich funktioniert.
ich suche verschieden spalten von zwei tabellen und zeige ich das ergebniss in einem grid an. Gesucht wird nahc Analysis_Id, was mal '000123/01' beinhaltete und mal 'Q-1234-456'.
das Daten mit Q wird ohne problem gefunden, aber das Daten mit / zeigt Grid nicht an. :wall:

wenn ich die SQL-String direkt SQL-Explorer ausführe, bekomme ich alle Ergebnisse mit / problemlos zurück, aber grid zeigt es nicht an. woran kann das bitte liegen? :wall:

wenn ich aber alle anzeigen will, zeigt Grid dann doch auch den einträge mit / an. :pale:

bitte dringend um Hilfe! heute ist abgabe! :angel2:

Delphi-Quellcode:
procedure TfrmMain.btnSuchenStartenClick(Sender: TObject);
var
  SQL,vWert,sAnalysis_id:String;
  i:Integer;
  A: TStringList;
begin
   A := TStringList.Create;
      cmbSuchFormblatt.Enabled := True;
       if (AnalysNr <> '') then
       begin
       TRY
          .
          .
          .

 Split('/', AnalysNr, A) ;
          sAnalysis_id := A[0];

          SQL := '';
          SQL := 'select distinct a.analysis_id, a.part_id, b.name, a.we_dt, a.batch_id, a.workgrp_id from forms.analysis a, forms.part b';
          SQL := SQL + ' where a.workgrp_id = ' + QuotedStr(Workid);
          SQL := SQL + ' and a.analysis_id LIKE ' + QuotedStr (sAnalysis_id + '%');

          if sRolle = 'USER' then
            SQL := SQL + ' and a.status < ' + sStatus;

          DM.qryGrid4.active := false;
          DM.qryGrid4.SQL.clear;
          DM.qryGrid4.SQL.add (SQL);
          DM.qryGrid4.active := True;

          .
          .
          .
         EXCEPT
            on E: EDatabaseError do ShowMessage(E.Message);
         ELSE
          Application.MessageBox('Operation fehlgeschlagen!', 'Fehler!');
         END;
        end

RWarnecke 12. Dez 2008 07:44

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
Lasse doch mal die Zeile
Delphi-Quellcode:
Split('/', AnalysNr, A) ;
weg.

lnaemi 12. Dez 2008 07:56

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
Zitat:

Zitat von RWarnecke
Lasse doch mal die Zeile
Delphi-Quellcode:
Split('/', AnalysNr, A) ;
weg.

weil es nicht funktioniert hat mit / dachte ich, ich nehme das erste teil raus, wo keine slasch ist, es geht aber trotzdem nicht. :roll:

soulies 12. Dez 2008 08:26

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
hoi,

Delphi-Quellcode:
Split('/', AnalysNr, A) ;
sAnalysis_id := A[0];
wie sieht 'split' aus ? übergibt man wirklich eine Stringlist?

wenn in der stringlist nix drin steht gibt es A[0] nicht somit wär sAnalysis_id leer

Zitat:

QuotedStr (sAnalysis_id + '%')
wäre denn einfach nur ein '%' ;

und ist sAnalysis_id als varchar o.ä. deklariert? weil du QuotedStr benutzt ?


cya

hoika 12. Dez 2008 08:33

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
Hallo,

hast du im SQL-Explorer wirklicb genau den SQL-Text eingegeben ?

Dein LIKE zeigt ja nur die Daten an, die mit sAnalysis_id beginnen.

als Bsp.
LIKE 'Q%' mit Q beginnen
LIKE '/%' mit / beginnen

Vielleicht meinstest du aj LIKE '%/%' ?, dann fehlt die der vordere % in deinem Code,
also

Delphi-Quellcode:
SQL := SQL + ' and a.analysis_id LIKE ' + QuotedStr ('%' + sAnalysis_id + '%');


Heiko

Bernhard Geyer 12. Dez 2008 08:34

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
Über was greifst du auf Oracle zu und welche Oracle-Version hast du? Der Zugriff über BDE ist denke ich nur bis Version 8 halbwegs funktionsfähig. Mit neueren Versionen ist bei der BDE mit Ausfällen zu rechnen. Besser native Zugriffskomponenten wie die von DevArt nehmen.
Ach ja: Und bitte parametrisierte Abfragen verwenden. Damit verschwinden auch einige der "komischen" Effekte bei manchen "Sonderzeichen".

Sharky 12. Dez 2008 10:17

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
Hai lnaemi,

auch wenn Du heute Projektabgabe hast....

So ziemlich jedes Problem ist dringend. Bitte nehmen diesen Text aus dem Titel deines Threads heraus.

BTW: Es macht es nicht leichter deine Texte zu lesen wenn überall die Smileys ihren Kopf an die Wand schlagen.

lnaemi 12. Dez 2008 21:22

Re: Dringend: SQL Server funktioniert, aber Grid zeigt nix!
 
sorry, wusste nicht, dass smily zu viel sein kann.
konnte leider den titel nicht ändern.
projekt abgegeben, zwei punkte werde ich dann montag fertig machen, solange andere teile getestet werden.
sorry wenn es genervt hat :xmas:
Zitat:

Zitat von Sharky
Hai lnaemi,

auch wenn Du heute Projektabgabe hast....

So ziemlich jedes Problem ist dringend. Bitte nehmen diesen Text aus dem Titel deines Threads heraus.

BTW: Es macht es nicht leichter deine Texte zu lesen wenn überall die Smileys ihren Kopf an die Wand schlagen.



Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 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 by Thomas Breitkreuz