AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi KAADO und MSSQL-Problem

KAADO und MSSQL-Problem

Ein Thema von UweR · begonnen am 9. Jul 2004 · letzter Beitrag vom 9. Jul 2004
Antwort Antwort
UweR

Registriert seit: 15. Mär 2004
Ort: Bad Marienberg
219 Beiträge
 
Delphi 7 Professional
 
#1

KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:10
Hallo Leute,

ich habe das folgende Problem:

Ich versuche mittels D5 und KAADO auf eine MS-SQL-Datenbank eine Abfrage zu starten und bekomme darauf eine äußerst kryptische Fehlermeldung. Das Problem hierbei ist auch das erstens die Datenbank bei einem Kunden vor Ort ist und ich hier nur auf eine ACCESS-Datenbank der gleichen Struktur zugreifen kann (damit funktionierts natürlich) und zweitens das die Datenbank-Gurus des Kunden gerade natürlich in Urlaub sind. Mir kann zwar jemand die Tabellendefinition vorlesen, welche auch mit meiner ACCESS-DB übereinstimmt, aber das war's schon.

Im folgenden Code krachts beim öffnen des Queries.

Delphi-Quellcode:
   queStandCUCM.SQL.Clear;
   queStandCUCM.SQL.Add('SELECT Lebenszeichen FROM STANDCUCM where SendingStationNumber = '+ intToStr(frmConfig.CUCMNo)+ ';');
   WriteLog('StandCUCMSQL.log', PChar(queStandCUCM.SQL.Text));
   try
      queStandCUCM.Open;
Die SQL-Abfrage lautet exact:

SELECT Lebenszeichen FROM STANDCUCM where SendingStationNumber = 3;
Die Fehlermeldung hierzu lautet:

Zitat:
Der Name '#07' ist in diesem Kontext nicht zulässig. Nur Konstanten, Ausdrücke und Variablen sind hier zulässig. Spaltennamen sind nicht zulässig
Das ganze finde ich äußerst kryptisch und habe die KAADO-Komponenten in Verdacht, die haben auch schon bei anderen Sachen etwas rumgezickt.

Kann jemand meinen Verdacht bestätigen oder ausräumen oder fällt irgendjemand noch was anderes dazu ein.
Gruß
UweR
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:17
Hai UweR,

ist es auch sicher das der Fehler durch die SQL-Abfrage verursacht wird? Was macht denn WriteLog?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#3

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:24
... könnte es sein, daß du den wert #07 übergibst und der in seiner form das problem ist? versuchs mal damit, daß du den wert in hochkommas setzt...
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#4

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:26
Zitat von UweR:
Die SQL-Abfrage lautet exact:

SELECT Lebenszeichen FROM STANDCUCM where SendingStationNumber = 3;

... übergib doch den wert mit parametern, dann wird automatisch die richtige form gewählt...
  Mit Zitat antworten Zitat
UweR

Registriert seit: 15. Mär 2004
Ort: Bad Marienberg
219 Beiträge
 
Delphi 7 Professional
 
#5

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:35
Hallo,

erst mal danke für die schnellen Antworten:

@Sharky:
Es kracht genau bei dem Open-Befehl. WriteLog macht nichts anderes als auf Festplatte in ne LogDatei zu schreiben und das funzt.

@ibp:
Ich hatte auch schon den Verdacht das sich der ASCII-Code 07 bei mir in den Code oder die Anweisung geschlichen hätte, mit sowas ähnlichem habe ich mal meine Debugger ausgehebelt, aber da ist nichts zu sehen sagt mein Hex-Editor. Wenn ich den wert in Anführungszeichen setze würde er als String interpretiert, da aber das Feld SendingStationNumber ein Integer ist krachts dann aus anderen Gründen.
Gruß
UweR
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#6

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:44
...versuchs mal damit

Delphi-Quellcode:
   queStandCUCM.SQL.Clear;
   queStandCUCM.SQL.Add('SELECT Lebenszeichen FROM STANDCUCM where SendingStationNumber =:stnr');
   queStandCUCM.ParamByName('stnr').AsInteger:=frmConfig.CUCMNo;
   WriteLog('StandCUCMSQL.log', PChar(queStandCUCM.SQL.Text));
   try
      queStandCUCM.Open;
... oder ich sehe gerade den fehler....

Delphi-Quellcode:
queStandCUCM.SQL.Add('SELECT Lebenszeichen FROM STANDCUCM where SendingStationNumber = '+
                      intToStr(frmConfig.CUCMNo)+ ';');
                                                  ^^^^ weg damit !!!
  Mit Zitat antworten Zitat
UweR

Registriert seit: 15. Mär 2004
Ort: Bad Marienberg
219 Beiträge
 
Delphi 7 Professional
 
#7

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:48
Zitat:
... übergib doch den wert mit parametern, dann wird automatisch die richtige form gewählt...
War mein erster Gedanke, doch da haben die KADAO-Parameter rumgezickt und ich kriegte haufenweise Fehlermeldungen (zumindest unter ACCESS) obwohl die Parameter korrekt im SQL-Statement standen und ich Ihnen sogar gesagt habe welcher Datentyp sie nun sind. Ich hab das auch schon unter D7 mit TADO gemacht und hatte nie solche Probleme. Das geht aber hier leider nicht weil ich sonst ein halbes Jahr brauche um mein altes-D5-Projekt incl. aller verwendeten Komponenten auf D7 umzustellen.
Gruß
UweR
  Mit Zitat antworten Zitat
UweR

Registriert seit: 15. Mär 2004
Ort: Bad Marienberg
219 Beiträge
 
Delphi 7 Professional
 
#8

Re: KAADO und MSSQL-Problem

  Alt 9. Jul 2004, 09:57
@ibp:
Das mit den Parametern habe ich ja schon mal vergeblich versucht.

By the way: Die Funktion ParamByName (kenn ich auch von IBX oder FIBPlus) gibts leider nicht und man muß die Parameter über den Index ansprechen.

Das mit dem Semikolon könnte ich probieren, stört aber bei allen anderen SQL-Abfragen die ich sonst noch verwende auch nicht weiter.
Gruß
UweR
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 20:20 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