Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Allgemeines Datenbankproblem bei SQL Abfrage (https://www.delphipraxis.net/132183-allgemeines-datenbankproblem-bei-sql-abfrage.html)

Jens Hartmann 7. Apr 2009 18:38

Datenbank: Firebird • Version: 2.1 • Zugriff über: ZEOS

Allgemeines Datenbankproblem bei SQL Abfrage
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo mal wieder,

also, ich habe mal wieder ein Problem mit der Datenbankabfrage über SQL. Leider denke ich, das ich da einen Grundlegenden Fehler in meiner Datenbank habe. Ich habe drei neue Tabelle über IBExpert angelegt, kann aber nur auf eine davon zugreifen. Im Anhang, habe ich mal die Fehlermeldung von Delphi.

In der Datenbank existieren momentan 4 Tabellen.

1. Eine Tabelle zum Datenspeichern.
2. Eine Tabelle zum Datenspeichern.
3. Eine Tabelle für die USER-Einstellungen
4. Eine Tabelle für die Konfigurationseinstellung.

Auf 1 und 2 kann ich zugreifen. Ich habe es auch mal im Designmode versucht. Wenn ich im SQL Code folgende Zeilen eingebe, kann ich auf die ersten beiden im Designmode zugreifen und bei den anderen nicht.

SQL-Code:
SELECT * FROM MB256PLUS
Geht...

SQL-Code:
SELECT * FROM MB100
Geht...

SQL-Code:
SELECT * FROM User
Geht nicht...

SQL-Code:
SELECT * FROM Config
Geht auch nicht...


Vieleicht kann mir ja mal jemand sagen, was ich da falsch mache.

Die Datenbank stelle ich mal in den Anhang.

Gruß Jens

mirage228 7. Apr 2009 18:40

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
User und Config sind evtl. reservierte Namen innerhalb Deines DBMS...

quendolineDD 7. Apr 2009 18:42

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Ich weiß jetzt nicht, wie es bei Firebird ist. Aber versuch mal <Datenbankname>.Config / <Datenbankname>.User
Eventuell hilft das dann weiter. Ansonsten bleibt dir nichts anderes übrig als deine Tabellen umzubennen.

RWarnecke 7. Apr 2009 18:52

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Sind die Tabellen in 3 und 4 von Dir angelegt worden ?

Edit: Denn User und Config sind reservierte Namen bei Firebird. Probiere die Namen Config und User mal in Anführungszeichen zu setzen. Vielleicht klappt es dann. So habe ich es bei einer Tabellenspalte gemacht, die den Namen Sequence bekommen hat von mir. Sequence ist ebenfalls ein reservierter Name.

Hansa 7. Apr 2009 18:52

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Zitat:

Zitat von mirage228
User und Config sind evtl. reservierte Namen innerhalb Deines DBMS...

So isset. :mrgreen: Ich empfehle einen Textdatei-Editor zum programmieren. Weder das Hightlighting in der DB noch das in IBExpert nützt anscheinend was. :wall:

mkinzler 7. Apr 2009 18:54

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Du könntest die Tabellennamen quoten. Aber besser wäre es diese umzubenennen
SQL-Code:
SELECT * FROM "User";

Jens Hartmann 7. Apr 2009 19:05

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Habe ich jetzt auch gemacht,

das funktioniert auch so jetzt, allerdings habe ich festgestellt, das ich die Tabellen nur dann Abfragen kann wenn ich die durchgehend in Großbuchstaben geschrieben habe.

Tabellenname über IBExpert : 'Benutzer' lässt sich nicht abfragen.

Tabellenname über IBExpert : 'BENUTZER' lässt sich abfragen.

Gruß Jens

mkinzler 7. Apr 2009 19:08

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Durch Quoten wird der name auch casesensitiv. Im IBExpert gibt es dehalb die Option, gequotete Bezeichner automatisch in Großbuchstaben wandeln zu lassen. Ich würde die Tabellennamen aber ändern.

DeddyH 7. Apr 2009 19:12

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
Zitat:

Zitat von mkinzler
Ich würde die Tabellennamen aber ändern.

Dazu würde ich aus den genannten Gründen auch dringendst raten, sonst wird man auf Dauer nicht glücklich.

[edit] Ich kaufe ein "d" :mrgreen: Außerdem: http://www.firebirdfaq.org/faq76/ [/edit]

Hansa 7. Apr 2009 19:12

Re: Allgemeines Datenbankproblem bei SQL Abfrage
 
"Besser" ist eher eine gelinde "Besserung". 8) Man beachte die quotes "". :mrgreen: Das ist wie mit "Made In Germany". Erdacht als Ächtung und heute noch Qualitätssiegel. Als nicht-englisch-Muttersprachler ist es doch wirklich sehr einfach "Benutzer" zu verwenden und den ganzen unnötigen Kram aus dem Weg zu gehen.

Uff, roter Kasten war schneller. :shock: Das Gesagte bleibt. Und die "Quotes" sind echt ein Problem. Es gilt : einmal Quotes immer Quotes ! Der SQL-Dialekt MUSS 3 sein !!

@ roter Kasten 2 : jo.

@ roter Kasten 3 : quotes müssen weg. :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:41 Uhr.
Seite 1 von 4  1 23     Letzte »    

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