Query mit WHERE-Bedingung und PGDBE

Hier dreht es sich um den PostGre Server

Moderator: Moderatoren

Antworten
psp
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 250
Registriert: Do, 22. Okt 2009 13:42
Kontaktdaten:

Query mit WHERE-Bedingung und PGDBE

Beitrag von psp »

Hallo liebe Mitleidende,

gibt es irgendwelche Sachen, die man beachten muss, damit man in Xbase++ mit PGDBE ein Query ausgeführt wird, das eine WHERE-Bedingung hat?

Als Beispiel habe ich etwas Einfaches:

Code: Alles auswählen

SELECT * FROM persplan WHERE abrjahr='2017' ORDER BY abrjahr,persnr,jahr,woche;
Der Query-Code wird automatisiert erstellt, das "*" ist der Einfachheit halber noch im Einsatz, ist aber bei der Tabelle mit 7 Spalten nicht mal das Problem.

Das Query sollte mit folgendem Code ausgeführt werden:

Code: Alles auswählen

USE (cQuery) ALIAS (caname) SHARED NEW VIA (_oSession)
stattdessen bekomme ich einen XPPERROR:

Code: Alles auswählen

------------------------------------------------------------------------------
FEHLERPROTOKOLL von "M:\Daten\Test\PASSSQL.EXE" Datum: 22.11.2017 09:18:10
Xbase++ Version     : Xbase++ (R) Version 2.00.853
Betriebssystem      : Windows 10 1709 Build 16299

Programm            : M:\Daten\Test\PASSSQL.EXE
Programmdetails     : PASSSQL.EXE - vom: 22.11.2017 / 09:17:39 - Größe: 53117952 Bytes
Version             : 4.21.01 vom 13.11.2017
Rechner             : ****-PC
Speicher            : 2048.00 von 2048.00 MB frei
Userinfo            : ****
aktueller Pfad      : M:\Daten\Test
PSP Nutzer          : Firma 001 Bearbeiter: 
Threads             : {{1, 1124, 537, "ERRORLOG", thread}, {3, 1652, 3013, "MAGICHELP:EXECUTE", MagicHelp}, {4, 2332, NIL, NIL, NIL}}
------------------------------------------------------------------------------
Workspacelist()     :  {}
Alias()             :  leer
Recno()             :  leer
Found()             :  NO
NetError()          :  NO
Select()            :  1
IndexOrd()          :  0
------------------------------------------------------------------------------
WorkSpaceList       : 
------------------------------------------------------------------------------
ADAC20B.DLL         : 2.0.0853
ADAC20C.DLL         : 2.0.0853
ASCOM10.dll         : 2.0.0853
ASCOM10C.dll        : 2.0.0853
AsiNet10.dll        : 2.0.0853
ASMP10.DLL          : 1.90.0331
ASRDBC10.DLL        : 2.0.0853
BAP.DLL             : 2.0.0853
comerr32.dll        : 1.6-kfw-3.2.1
DBFDBE.DLL          : 2.0.0853
dbfupsize.dll       : 2.0.0853
DELDBE.DLL          : 2.0.0853
DXE.DLL             : 1.90.0355.19
gssapi32.dll        : 1.6-kfw-3.2.1
k5sprt32.dll        : 1.6-kfw-3.2.1
krb5_32.dll         : 1.6-kfw-3.2.1
libeay32.dll        : 0.9.8e
libpqex.dll         : 8.3.1
msvcr71.dll         : 7.10.3052.4
NTXDBE.DLL          : 2.0.0853
OT4Xb.dll           : 1.6.4.40
pgdbe.dll           : 2.0.0853
pgutil.dll          : 2.0.0853
rtfedit.dll         : 1.06.01
SDFDBE.DLL          : 2.0.0853
ssleay32.dll        : 0.9.8e
XbtBase1.dll        : 2.0.0853
XBTBase2.dll        : 2.0.0853
XbZLib.dll          : 2.00.146
XPPDBGC.DLL         : 2.0.0853
xppdui.dll          : 2.0.0853
XPPNAT.DLL          : 2.0.0853
XPPRT1.DLL          : 2.0.0853
XPPRT2.DLL          : 2.0.0853
XPPSYS.DLL          : 2.0.0853
XPPUI1.DLL          : 2.0.0853
XPPUI2.DLL          : 2.0.0853
------------------------------------------------------------------------------
oError:args         :
          -> VALTYPE: L VALUE: .T.
          -> VALTYPE: O CLASS: dacSession
          -> VALTYPE: C VALUE: SELECT * FROM PERSPLAN WHERE ABRJAHR='2017' ORDER BY ABRJAHR,PERSNR,JAHR,WOCHE;
          -> VALTYPE: C VALUE: PERSPLAN
          -> VALTYPE: L VALUE: .T.
          -> VALTYPE: L VALUE: .F.
oError:canDefault   : J
oError:canRetry     : J
oError:canSubstitute: N
oError:cargo        : NIL
oError:description  : Datei kann nicht ge”ffnet werden
oError:filename     : 
oError:genCode      :         71
oError:operation    : DbUseArea
oError:osCode       :          0  =  Der Vorgang wurde erfolgreich beendet.
oError:severity     :          2
oError:subCode      :       8999
oError:subSystem    : BASE
oError:thread       :          1
oError:tries        :          1
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Aufgerufen von OPEN_DB(466)
Aufgerufen von MAIN(720)
Das USE (cQuery) ... nutzen wir mit komplizierteren Querys über ODBC auf MSSQL-Datenbanken im reinen DBFNTX-Programm. Die Fehlermeldung kommt auch ohne WHERE-Bedingung und ohne ORDER BY-Anhang.

Edith: Typo bei einer Variable
Antworten