AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi TIBQuery Zugriffsverletzung bei Query.First
Thema durchsuchen
Ansicht
Themen-Optionen

TIBQuery Zugriffsverletzung bei Query.First

Ein Thema von BenjaminH · begonnen am 21. Jun 2010 · letzter Beitrag vom 22. Jun 2010
Antwort Antwort
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#1

TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 12:43
Datenbank: Firebird • Version: 2.1 • Zugriff über: Interbase
Hallo,
ich habe ein echt seltsames Problem. Bei einem Insert mittels TIBQuery, füge ich einen neuen Datensatz ein und verwende dabei auch
Code:
 returning "id";
Der relevante Code lautet:
Code:
Query.Open;
Query.First;
result:=Query.Fields[0].AsInteger;
Beim Aufruf von Query.First bekomme ich eine Zugriffsverletzung
Zitat:
Schreiben von Adresse 00000000' aufgetreten.
In der Datenbank ist der neue Datensatz zu finden.
Kann mir vielleicht jemand auf die Sprünge helfen?
Vielen Dank,
Benjamin
Benjamin
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 12:46
Es scheint keine Instanz zu bestehen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 12:47
Nach dem Open solltest Du eigentlich automatisch auf dem ersten DS stehen, so denn einer vorhanden ist. Wie ist es so?
Delphi-Quellcode:
Query.Open;
if not Query.EOF then
  result:=Query.Fields[0].AsInteger;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 12:52
Hallo,
ich habe ein echt seltsames Problem. Bei einem Insert mittels TIBQuery, füge ich einen neuen Datensatz ein und verwende dabei auch
Code:
 returning "id";
Kann das TIBQuery überhaupt? Insert mit anschließender Rückgabe eines Wertes?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 12:54
Oder der wert wird als Parameter zurückgegeben
Markus Kinzler
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 12:57
Es scheint keine Instanz zu bestehen
Dann dürfte der Datensatz aber doch auch nicht in der DB auftauchen, oder?
Nach dem Open solltest Du eigentlich automatisch auf dem ersten DS stehen, so denn einer vorhanden ist. Wie ist es so?
Delphi-Quellcode:
Query.Open;
if not Query.EOF then
  result:=Query.Fields[0].AsInteger;
Listenindex überschreitet das Maximum.
Kann das TIBQuery überhaupt? Insert mit anschließender Rückgabe eines Wertes?
Jap, hat genau so schonmal funktioniert.(Oder bilde ich mir das ein?)
Oder der wert wird als Parameter zurückgegeben
Wie bekomme ich den dann?

Trotz allem: Die Zugriffsverletzung dürfte doch nicht auftreten, oder?
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 13:00
Und beiresult:=Query.Parameters[0].AsInteger;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 13:02
returning ist eine Erweiterung von FireBird. es ist die Frage, ob IBX, welche ja für Interbase sind, dies können. wenn dann über den Parameter
Markus Kinzler
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#9

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 21. Jun 2010, 13:26
Oh, ok, es sieht so aus, als ob es nicht geht. Komisch, ich dachte das hätte vor 3 Tagen noch funktioniert. Seltsam.
Benjamin
  Mit Zitat antworten Zitat
idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#10

AW: TIBQuery Zugriffsverletzung bei Query.First

  Alt 22. Jun 2010, 08:41
Ich habe auch eine ganze Weile mit Komponenten für Interbase herumgerauft, bevor ich es aufgegeben habe.
Ich würde Dir die Verwendung der UIB Schnittstelle empfehlen, die funktioniert mit Firebird klaglos.
Etwas verwirrend allerdings dort:
Execute immediate liefert den "retuning id" Wert in einem Params Puffer, während Prepare/Execute diesen Wert als Result Singleton zurückgibt.
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:18 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