Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Großes Problem mit SQL-Befehl bei Delphi & Zeos Komponenten (https://www.delphipraxis.net/50918-grosses-problem-mit-sql-befehl-bei-delphi-zeos-komponenten.html)

CG2003 2. Aug 2005 23:28

Datenbank: MySQL • Version: 4.1.10a • Zugriff über: Delphi und Zeos Komponenten

Großes Problem mit SQL-Befehl bei Delphi & Zeos Komponen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo, ich habe ein Problem :( und hoffe Ihr könnt mir helfen!

Also, ich bin gerade dabei eine OpenSource Projektverwaltung zu programmieren und nutze als Datenspeicherung eine MySQL Datenbank, welche auf einem lokalen MySQL Server liegt.

Die Datenbank wird von Delphi bzw. den Zeos Komponenten erfolgreich erstellt, nur wenn er den SQL-Befehl bzw. Text ausführen soll, der die Tabellen erstellen soll, kriege ich in meinem selbstprogrammierten Debug-Fenster folgende Meldung:


Result: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '; CREATE TABLE IF NOT EXISTS Versions(Id INT NOT NULL AUTO_INCRE

SQL: CREATE TABLE IF NOT EXISTS Projects(Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ProjectName varchar(255), ProgrammingEnvironment varchar(255), DevelopmentStatus varchar(255), Percentage varchar(255), License varchar(255), OperatingSystem varchar(255), Notice varchar(255), ProjectDirectory varchar(255), ProjectMembers varchar(255), KEY idx_ProjectName(ProjectName), KEY idx_Percentage(Percentage), KEY idx_ProjectMembers(ProjectMembers));

CREATE TABLE IF NOT EXISTS Versions(Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ProjectName varchar(255), VerTag varchar(255), VerValue varchar(255), FileVer varchar(255), KEY idx_ProjectName(ProjectName), KEY idx_FileVer(FileVer));

CREATE TABLE IF NOT EXISTS Files(Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ProjectName varchar(255), FileName varchar(255), FilePurpose varchar(255), FileType varchar(255), FileStatus varchar(255), FileVersionTag varchar(255), FileMembers varchar(255), KEY idx_ProjectName(ProjectName), KEY idx_FileName(FileName), KEY idx_FileVersionTag(FileVersionTag), KEY idx_FileMembers(FileMembers));

CREATE TABLE IF NOT EXISTS Tasks(Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ProjectName varchar(255), Task varchar(255), StatusImage varchar(255), TaskMembers varchar(255), Percentage varchar(255), KEY idx_ProjectName(ProjectName), KEY idx_Task(Task), KEY idx_TaskMembers(TaskMembers));

CREATE TABLE IF NOT EXISTS BugTrack(Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ProjectName varchar(255), Bug varchar(255), ShortDescription varchar(255), Sourcefile varchar(255), CodeLines varchar(255), ErrorDescription varchar(255), Solved varchar(255), BugTrackMembers varchar(255), KEY idx_ProjectName(ProjectName), KEY idx_Bug(Bug), KEY idx_Sourcefile(Sourcefile), KEY idx_Solved(Solved), KEY idx_BugTrackMembers(BugTrackMembers));

CREATE TABLE IF NOT EXISTS Publications(Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ProjectName varchar(255), Name varchar(255), URLView varchar(255), URLEdit varchar(255), URLExpand varchar(255), PublicatedVersion varchar(255), PublicatedText varchar(255), PublicationMembers varchar(255), KEY idx_ProjectName(ProjectName), KEY idx_PublicationName(Name), KEY idx_PublicationMembers(PublicationMembers));


Weiß einer von Euch, was ich damit anfangen soll, bzw. wo das Problem liegt? Ich habe mir eben ganze 50 Minuten die oben angegebene Fehlermeldung angeschaut und den SQL-Befehl, doch ich finde den Fehler einfach nicht... :wall:

Zur Sicherheit habe ich Euch noch mal den kompletten SQL-Befehl zum Erstellen der Tables angefügt. Wie gesagt, die Datenbank an sich wird ohne Probleme und Fehler erstellt, nur dieTables halt nicht.

Hoffe Ihr könnt mir weiterhelfen...

Sharky 3. Aug 2005 06:42

Re: Großes Problem mit SQL-Befehl bei Delphi & Zeos Komp
 
Hai CG2003,

die SQL-Befehle sind okay und laufen auch. Ich habe sie eben mal mit dem MySQL Control Center an meinen mySQL gesendet und die Tabellen wurde ohne probleme erstellt.

Welche Zeos-Version benutzt Du denn und mit welcher führst Du die Befehle aus?

Jelly 3. Aug 2005 07:18

Re: Großes Problem mit SQL-Befehl bei Delphi & Zeos Komp
 
Das Problem ist daß Zeos keine kompletten Skripte ausführen kann, sondern nur einzelne Befehle. Zumindest war das bei meiner Zeos Version so (v.4. irgendwas).

Alternative: nutzte z.B. MyDAC von Corelabs oder bitte mich ganz lieb, dann mail ich dir eine Aufbaukomponente, welche über Zeos das Skript ausführen kann...

Sharky 3. Aug 2005 07:37

Re: Großes Problem mit SQL-Befehl bei Delphi & Zeos Komp
 
In der aktuellen Version gibt es einen TZSQLProcessor. Dieser ist genau für solche Scripte gedacht.

CG2003 3. Aug 2005 09:04

Re: Großes Problem mit SQL-Befehl bei Delphi & Zeos Komp
 
Hmm, OK, das hatte ich nicht gewusst,
dass die Zeos Komponenten keine SQL-Scripts ausführen können. :roll:

Gut, dann werde ich beide Methoden (Aufbau-Komponente sowie Processor)
mal ausprobieren, und dann entscheiden, welche ich letztendlich nehme. :gruebel:

Ich bedanke mich recht herzlich bei Euch für Eure schnelle und kompetente Hilfe.
Besonderen Dank auch an Jelly für das Zusenden der Komponente. :hi:

Sobald das Programm fertig ist, werde ich es SELBSTVERSTÄNDLICH hier als OpenSource zur Verfügung stellen... :dp:

Igotcha 3. Aug 2005 10:15

Re: Großes Problem mit SQL-Befehl bei Delphi & Zeos Komp
 
Zitat:

Zitat von CG2003
Hmm, OK, das hatte ich nicht gewusst,
dass die Zeos Komponenten keine SQL-Scripts ausführen können. :roll:

Das ist so nicht richtig.

Es gibt in den ZEOS-Komponenten einen TZSQLProcessor, dem man das Script-File übergibt und dann durch diesen ausführen lässt.

Gruß Igotcha


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:51 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