Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi MySQL - Delphi kann keine "YEAR"-Felder darstellen? (https://www.delphipraxis.net/87321-mysql-delphi-kann-keine-year-felder-darstellen.html)

Tyler 27. Feb 2007 07:47

Datenbank: MySQL • Version: 4.0.18 • Zugriff über: ZEOS

MySQL - Delphi kann keine "YEAR"-Felder darstellen
 
Hallo,


der Titel sagt ja eigentlich schon alles aus, per ZEOS greife ich auf einen MySQL Server zu:

SELECT * FROM myTable
GROUP BY jahr
ORDER BY jahr


nun wird eine Listbox mit den Jahren gefüllt, und dort erhalte ich die Fehlermeldung bei

ListBox.Items.Add( myQuery.FieldByName('jahr').AsString )

auch

ListBox.Items.Add( myQuery.FieldByName('jahr').AsString )

führt nicht zum Erfolg. Erst, wenn der Feld-Typ auf "varchar" geändert wird, kann auch Delphi das Feld erkennen. Gibts dafür nen Lösungsansatz oder können ZEOS resp. Delphi einfach keine Felder des Typs "YEAR" darstellen?

Bernhard Geyer 27. Feb 2007 08:01

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
0 Problem bei Verwendung der Core Lab's MyDAC-Komponenten und MySQL 4.1.20. Client Vista, Server W2K

Liegt also an ZEOS oder der mySQL-Version.

Tyler 27. Feb 2007 08:39

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
okay.. danke für die Info. Schade nur, dass die Komponenten was kosten. Im Moment bleibt mir warscheinlich nichts anderes übrig, als YEAR Felder durch VARCHAR Felder zu ersetzen.

mkinzler 27. Feb 2007 08:50

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
Schon mal eine Wandlung per Zwischenschritt versucht?

Tyler 27. Feb 2007 09:08

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
du meinst direkt im SQL Script? Gibts da ne Funktion, um aus einem Datum einen Varchar zu generieren? Auf Anhieb fällt mir da eher der unschöne Weg über "SELECT LEFT(4, jahr) AS jahr ein.

Eine andere Möglichkeit, die mir da gerade noch in den Sinn kommt ist natürlich, das Feld als Typ "DATE" zu deklarieren und per YEAR(jahr) nur das Jahr auszulesen.

mkinzler 27. Feb 2007 09:10

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
Was steht den genau in dem Feld drin?

Tyler 27. Feb 2007 11:07

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
nichts weiter als Jahreszahlen... ab 2002 bis 2007

mkinzler 27. Feb 2007 11:12

Re: MySQL - Delphi kann keine "YEAR"-Felder darste
 
versuch mal
SQL-Code:
select Cast( Year as Varchar(4)) as Year from ...


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