AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Problem mit SQL --> Fehlermeldung: Invalid parameter
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit SQL --> Fehlermeldung: Invalid parameter

Ein Thema von alex-91 · begonnen am 14. Apr 2010 · letzter Beitrag vom 14. Apr 2010
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
alex-91

Registriert seit: 14. Apr 2010
44 Beiträge
 
#1

Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:07
Datenbank: Pradox 7 • Zugriff über: BDE
Hallo !
Ich hab auch ein Problem mit SQL
Also: Ich habe in der Schule Programmieren und lerne nun das 4. Jahr Delphi. Zur Matura ( = Abi) muss ich ein Projekt machen. Und zwar ist dass ein Datenbankprogramm das helfen soll elektronische Geräte zu katalogisieren und zu verwalten.
(Delphi 7, BDE, Paradox 7)

Nun möchte ich die Option anbieten, zBsp. einen neuen Beamer in die Datenbank hinzuzufügen.
Hier einmal der Quelltext:

Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
inventarnummer, raumnummer : integer;
name, raumbezeichnung : string;
begin
nummer:=strtoint(Edit1.Text);
raumnummer:=strtoint(Edit2.Text);
raumbezeichnung:=Edit3.Text;
name:=Edit4.Text;

Query1.Active:=false;
Query1.SQL.Clear;
Query1.SQl.Add('INSERT INTO Räume VALUES ('+inttostr(raumnummer)+','+(raumbezeichnung)+')');
Query1.ExecSQL;
Query1.Active:=true;

Query1.Active:=false;
Query1.SQL.Clear;
Query1.SQl.Add('INSERT INTO Inventarnummern (inventarnummer) VALUES ('+inttostr(inventarnummer)+')');
Query1.ExecSQL;
Query1.Active:=true;
Wenn ich nun das Programm ausführe gibt es keine Probleme. Ich kann die Daten in die Edits eingeben. Aber wenn ich dann auf den Button drücke kommt die fehlermeldung :
ProjectProject1.exe raised exception class EDBEngineError with message 'Invalid parameter.'. Process stopped. Use Step or Run to continue.

ein grüner Pfeil steht dann beim 2. Query1.Active:=false;
Hab bereits einen klassenkollegen befragt, er hat ein ähnliches programm sieht aber den fehler nicht
Ich hoffe ich habe nichts falsch gemacht und ihr könnt mir helfen ...

liebe Grüße
alex-91
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:10
Eine Query die ein INSERT/UPDATE-Statement beinhaltet kannst du nicht mit .Active "aktiv" schalten. Diese werden per ExecSQL ausgeführt.
".Active" erwartet einen Ergebniscurser einer SELECT-Anweisung.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:12
Zudem würde sich hier parametrisierte Abfragen anbieten
Markus Kinzler
  Mit Zitat antworten Zitat
alex-91

Registriert seit: 14. Apr 2010
44 Beiträge
 
#4

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:17
Seit mir bitte nicht böse für die blöden Fragen aber :
wenn ich die
[delphi]Query1.Active:=true;[/delphi weggebe] , kommt der Fehler noch immer


und was ist gemeint mit parametisierter abfrage ?

lg
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:19
Akzeptiert den die BDE/Paradox Umlaute in Datenbankobjekten?
Heisst die Tabelle wirlich Räume?
Markus Kinzler
  Mit Zitat antworten Zitat
alex-91

Registriert seit: 14. Apr 2010
44 Beiträge
 
#6

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:23
Die tabelle hat wirkliche Räume.db geheißen.
Hab jtz das Ä durch ein A ersetzt und hab leider das Problem nachwievor
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:24
In welcher Codezeile tritt den der Fehler auf?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:27
Hallo? Und was ist mit meinem Hinweis?

Nochmal etwas anders Beschrieben. Lösche Zeile
Query1.Active:=true; Und gut ist. Erklärung Post #2
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
alex-91

Registriert seit: 14. Apr 2010
44 Beiträge
 
#9

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:32
Der Erste SQL-Block dürfet funktionieren. Es hat auch schon ein paar mal, wenn auch falsch, etwas in die Tabelle geschrieben. Das Problem tritt dann vermutlich beim 2.  Query1.Active:=false; auf ...
  Mit Zitat antworten Zitat
Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#10

Re: Problem mit SQL --> Fehlermeldung: Invalid parameter

  Alt 14. Apr 2010, 17:35
Hallo,

der ursprüngliche Fehler liegt vermutlich daran, dass du eine Zahl in Hochkommata setzt. Das darf nicht sein! Auch steht in der ersten SQL-Anweisung eine Variable in Klammern, aber das dürfte unproblematisch sein.

Genau deshalb gibt es die Empfehlung, mit Parametern zu arbeiten. Das ist zwar am Anfang eine Umstellung und sieht komplizierter aus; es vermeidet aber Unmengen von Problemen.

Benutze einfach die Forumssuche z.B. nach "Abfragen mit Parametern" o.ä.

Gruß Jürgen

// Asche auf mein Haupt, die vielen Hochkommata haben mich offensichtlich verwirrt. Noch ein Argument mehr für Parameter :wink:
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 06:47 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