AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Fehler - Abfrage zu komplex bei ODBC auf access
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler - Abfrage zu komplex bei ODBC auf access

Ein Thema von bodo1987 · begonnen am 27. Apr 2006 · letzter Beitrag vom 27. Apr 2006
Antwort Antwort
Seite 1 von 2  1 2      
bodo1987

Registriert seit: 27. Apr 2006
10 Beiträge
 
Delphi 5 Enterprise
 
#1

Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 08:18
Datenbank: Access • Zugriff über: ODBC
Hallo Leute,

ich habe folgendes Problem und bin nun langsam am Verzweifeln.

Ich greife mit einem Formular via ODBC auf eine Access-Datenbank zu und das klappt auch noch.
Aber wenn der aktuelle Datensatz mehr als 90 Datenfelder enthällt (und leider brauch ich die auch noch alle) dann kommt da so ein lustiger Fehler: "Abfrage zu komplex".

Ich denke mir das es daran liegt wieviele Felder man auf einmal editieren will. Eigentlich reicht mir ja eins aber wie kann ich denn den Bereich ändern der editiert werden soll, oder gibt es da andere dinge an die ich nicht gedacht habe.

Vielen Dank schon mal im Vorraus
Bodo
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 08:23
Wiie änderst du den? Wenn du SQl verwendest kannst du ja nur das gewünschte Feld ändern.
Markus Kinzler
  Mit Zitat antworten Zitat
bodo1987

Registriert seit: 27. Apr 2006
10 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 09:12
ich benutze einfach den edit Befehl des Objectes tTable änder mein Feld via FieldByName und speicher mit post.
klappt ja auch soweit nur bei den großen halt nicht
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 09:22
Auf den Einsatz von TTable sollte man verzichten.Besonderst bei ODBC. Verwende ein TQuery und einen UPDATE-Befehl.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 09:31
Verwende lieber die ADO-Komponenten in Delphi (TADODataset). Die BDE hat auch einige Bugs wenn zu viele Felder verwendet werden bzw. diese zu lang sind.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
bodo1987

Registriert seit: 27. Apr 2006
10 Beiträge
 
Delphi 5 Enterprise
 
#6

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 09:54
Zitat:
Auf den Einsatz von TTable sollte man verzichten.Besonderst bei ODBC. Verwende ein TQuery und einen UPDATE-Befehl.

Gute Idee. Scheint auch so zu funktionieren, wenn ich die Abfrag direct in Access ausführe. Wenn ich das aber in Delphi mache bringt er die Meldung:

Allgemeiner SQL-Fehler[Microsoft][ODBC Microsoft Acces Driver]2 Parameter wurden erwartet es wurden
aber zu wenig übergeben

das ist ja schön und gut aber ExecSQL will doch gar keine Parameter.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 10:00
Aber die Felder werden als Paramter in der erzeugten SQL-Abfrage verwendet.
Markus Kinzler
  Mit Zitat antworten Zitat
bodo1987

Registriert seit: 27. Apr 2006
10 Beiträge
 
Delphi 5 Enterprise
 
#8

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 10:07
is ja richtig jedoch geht die gleich abfrage in Access selbst ja ohne Probleme oder welche Felder meinst du jetzt.
Also meine Abfrage sieht so aus:

SQL.Clear;
SQL.Add('UPDATE ' + tableName + ' SET ' + Port + ' = ' + newValue + ' WHERE Leiste= "A";');

tableName ist mein TabellenName (wer hätte das gedacht)
Port mein Feld
NewValue der neue Wert
Leiste der Datensatz
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 10:10
Versuchs mal so
Delphi-Quellcode:
SQL.Clear;
SQL.Add('UPDATE ' + tableName + ' SET ' + Port + ' = ' + newValue + ' WHERE Leiste= '''A''';');
Markus Kinzler
  Mit Zitat antworten Zitat
bodo1987

Registriert seit: 27. Apr 2006
10 Beiträge
 
Delphi 5 Enterprise
 
#10

Re: Fehler - Abfrage zu komplex bei ODBC auf access

  Alt 27. Apr 2006, 10:15
[Fehler] Unit4.pas(37): ')' erwartet, aber Bezeichner 'A' gefunden

Das wars nicht

aber wenn ich die ganze WHERE Klausel weglasse wird nur noch ein Parameter erwartet.
Also müsste der Fehler doch irgendwo im SQL String sein und an den Variablen liegts nicht die hab ich eben mal durch Testwerte ersetzt sie auf jeden Fall funktionieren sollten und das Ergebniss war das gleiche
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 09:34 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