Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi [SQL] Fehler in Anweisung (https://www.delphipraxis.net/16367-%5Bsql%5D-fehler-anweisung.html)

APP 16. Feb 2004 12:51

Re: [SQL] Fehler in Anweisung
 
Hallo Telepath :mrgreen: ,
ich bin zwar nicht der große Access-Guru, aber vielleicht versuche es mal ohne den letzten ";" in Deiner Anweisung.


(PL/SQL z.B. benötigt immer einen ";" als Abschluß, aber ein TQuery nicht, soweit ich weiß)

Fellmer Lloyd 16. Feb 2004 13:31

Re: [SQL] Fehler in Anweisung
 
Hach, hast mich erwischt :angle2:

Nee, an dem Semikolon liegt das auch nicht.
Ich dreh bald durch :wall: -> :freak:

APP 16. Feb 2004 13:34

Re: [SQL] Fehler in Anweisung
 
Hallo Fellmer,

Du benutzt ja auch die BDE als Zugang zu Access,
hast Du schon einmal versucht die SQL-Anweisungen
in den Datenbank-Explorer zu kopieren und dann auszuführen?

Wenn die BDE dann nicht motzt und der Table erstellt
wurde, liegt der Fehler vielleicht wo anderst.

Tyrael Y. 16. Feb 2004 13:41

Re: [SQL] Fehler in Anweisung
 
Kann es sein das eine Zeile am Anfang fehlt?

und zwar:

Delphi-Quellcode:
Database.Connected := True

Fellmer Lloyd 16. Feb 2004 14:29

Re: [SQL] Fehler in Anweisung
 
@Tyrael: Das erledigt Database.Open;

@APP: Folgende Anweisung funktioniert jetzt (Im DB-Explorer):
SQL-Code:
CREATE TABLE RezOld
(
  RezNr COUNTER,
  Rezeptname STRING(50) NOT NULL ,
  Parent INT NOT NULL ,
  Anleitung MEMO NULL ,
  Bildpfad STRING NULL ,
  Zutaten MEMO NULL ,
  Links MEMO NULL
)
Der Fehler Liegt also an zwei Punkten:

Primärschlüssel
SQL-Code:
PRIMARY KEY (RezNr)
Unique-Autowert (Ohne Unique funktioniert es)
SQL-Code:
RezNr COUNTER UNIQUE
Aber wieso wohl? :gruebel:

Robert_G 16. Feb 2004 15:07

Re: [SQL] Fehler in Anweisung
 
Access hat seine eigene Interpretation von SQL... :lol:

APP 16. Feb 2004 15:17

Re: [SQL] Fehler in Anweisung
 
Hallo Fellmer,

ich habe mal kurz gegoogelt:
Zitat:

To create a primary key index on more than one field, include all of the field names in the field list.

CREATE INDEX idxCustomerName
ON tblCustomers ([Last Name], [First Name])
WITH PRIMARY
Quelle: http://msdn.microsoft.com/library/de.../acfundsql.asp

Das könnte Dir weiterhelfen.

Fellmer Lloyd 16. Feb 2004 15:30

Re: [SQL] Fehler in Anweisung
 
Access und sein SQL :wall:. Aber ich will kein DB Server installieren (Oracle, MySql).

@APP:
Hmm...sieht so aus als müsste ich den Primärschlüssel nachträglich hinzufügen.
Ich teste es gleich morgen, jetzt is Feierabend :cheers:

Thx für die Tips, ich werd die fertige Lösung dann posten. :witch:

[EDIT]
Thx für den Link APP, es funktioniert mit folgender Struktur:
SQL-Code:
CREATE TABLE RezOld

  RezNr COUNTER CONSTRAINT PK_RezNr PRIMARY KEY,
  Rezeptname STRING(50) NOT NULL ,
  Parent INT NOT NULL ,
  Anleitung MEMO NULL ,
  Bildpfad STRING NULL ,
  Zutaten MEMO NULL ,
  Links MEMO NULL
)
:wiejetzt: --> :dp:

mikhal 16. Feb 2004 17:51

Re: [SQL] Fehler in Anweisung
 
Lege den PK an nachdem du die Tabelle erzeugt hast, das sollte eigentlich gehen:

SQL-Code:
CREATE INDEX PK_RezOld ON RezOld(RezNr) WITH PRIMARY;
Grüße
Mikhal


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:37 Uhr.
Seite 2 von 2     12   

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