Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbankzugriff (https://www.delphipraxis.net/88669-datenbankzugriff.html)

bmai0 19. Mär 2007 09:06

Datenbank: Oracle • Version: 8.0 • Zugriff über: db- express

Datenbankzugriff
 
Hallo,

bin neu hier im Forum und habe folgendes Problem. Ich versuche mit folgendem select auf
Daten in der Datenbank zu zugreifen.

Delphi-Quellcode:
SQLQueryAnmeldung.Close;
      SQLQueryAnmeldung.SQL.Clear;
      SQLQueryAnmeldung.SQL.add('SELECT *');
      SQLQueryAnmeldung.SQL.add('FROM ANGELEGTE_PROBE');
      SQLQueryAnmeldung.SQL.add('WHERE ROBOTERNAME = :client ');
      SQLQueryAnmeldung.Parambyname('client').AsString :=Robotername;
      SQLQueryAnmeldung.Open;
      FormReportProbenliste.ReportProbenListe.Preview;
      SQLQueryAnmeldung.Close;
ROBOTERNAME ist vom Typ varchar2

Als Fehlermeldung bekomme folgende Text
Zitat:

db-Express - Fehler: die Operation wird nicht unterstützt.
In einem anderen Formular verwende ich das gleiche SQLQuery.

Delphi-Quellcode:
    SQLQueryAnmeldung.Close;
     SQLQueryAnmeldung.SQL.Clear;
     SQLQueryAnmeldung.SQL.add('SELECT ROLLE,USERNAME');
     SQLQueryAnmeldung.SQL.add('FROM BENUTZER_QA');
     SQLQueryAnmeldung.SQL.add('WHERE USERNAME= :user and PASSWORT= :passwort and GUELTIG = 1');
     SQLQueryAnmeldung.Parambyname('user').AsString :=EdBenutzer_ID.Text;
     SQLQueryAnmeldung.Parambyname('passwort').AsString := MaskEdPasswort.Text;
     SQLQueryAnmeldung.Open;
      if not SQLQueryAnmeldung.EOF then
        begin
         Rolle := SQLQueryAnmeldung.FieldValues['ROLLE'];
         USER := SQLQueryAnmeldung.FieldValues['USERNAME'];
Hier funtioniert der Datenbankzugriff ohne Probleme.
Meine erste Vermutung war es liegt am Report ?? Aber ??
Kann mir da jemand weiter helfen. danke im voraus.
bmai0

bttb930 19. Mär 2007 09:58

Re: Datenbankzugriff
 
debug doch mal - in welcher zeile tritt der fehler auf?

bmai0 19. Mär 2007 11:02

Re: Datenbankzugriff
 
Die Fehlermeldung kommt in Zeile

Delphi-Quellcode:
 FormReportProbenliste.ReportProbenListe.Preview;
also in der Zeile wo ich die gezogenen Daten in den Report einspiele.
Ich habe es mal ohne WHERE - Klausel laufen lassen da wird der Report
mit Daten gefüllt, allerdings zieht er dann alle angelegten Daten. :roll:

mkinzler 19. Mär 2007 11:03

Re: Datenbankzugriff
 
Ersetze mal den * mit den benötigten Feldern.

bmai0 19. Mär 2007 11:07

Re: Datenbankzugriff
 
Habe ich auch schon versucht. Ergebnis war die obige Fehlermeldung :gruebel: :gruebel:

mkinzler 19. Mär 2007 11:09

Re: Datenbankzugriff
 
Versuch mal
Delphi-Quellcode:
SQLQueryAnmeldung.Parambyname('user').Value ...
oder
Delphi-Quellcode:
SQLQueryAnmeldung.Parambyname('user').asWideChar

bmai0 19. Mär 2007 11:25

Re: Datenbankzugriff
 
Danke für deine schnelle Antwort. Leider funtioniert beides nicht.

Delphi-Quellcode:
SQLQueryAnmeldung.Parambyname('client').AsWideChar :=Robotername;
hatt schon beim comp. Probleme --> undef. Bezeichner AsWideChar
Habe ich hier was falsch gemacht ??

Delphi-Quellcode:
 SQLQueryAnmeldung.Parambyname('client').value :=Robotername;
Hier kommt die alte Fehlermeldung.

mkinzler 19. Mär 2007 11:28

Re: Datenbankzugriff
 
Sorry muß .AsWideString heißen

bmai0 19. Mär 2007 11:37

Re: Datenbankzugriff
 
leider der selbe Effekt
Delphi-Quellcode:
SQLQueryAnmeldung.Parambyname('client').AsWideString :=Robotername;
Kann sein das meine Delphi - Version ( Delphi 7 ) das nicht schnallt.

Wenn ich .AsW eingebe bietet er mir einzig .AsWord an.
.AsWi bringt schon kein Ergebnis.

mkinzler 19. Mär 2007 11:37

Re: Datenbankzugriff
 
Zitat:

Kann sein das meine Delphi - Version ( Delphi 7 ) das nicht schnallt.
Ja kann gut sein. D10 kennt es.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:03 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