Ii-orMedlem sedan nov. 2001294 inlägg Trådstart#1 Jag har nyss börjat med MySQL och har problem med att formatera datum i SQL-satser.
Denna SQL-sats funkar som den ska:
SQL = "SELECT f_online FROM t_members"
Men denna
SQL = "SELECT year(f_online) FROM t_members"
ger detta felmeddelande:
Microsoft OLE DB Provider for ODBC Drivers fel '80004005'
[Microsoft][ODBC Driver Manager] Drivrutinen kan inte hantera denna parameter.
/mysql runnerscorner/default.asp, rad 35
rad 35: f_online = RecSet(0)
Vad är felet?
EedebroMedlem sedan aug. 2001261 inlägg Prova:
SQL = "SELECT year(f_online) AS annatNamn FROM t_members"
Ii-orMedlem sedan nov. 2001294 inlägg Det har jag provat, men samma fel...
EkströmMedlem sedan feb. 20022 594 inläggSQL = "SELECT year(cdate(f_online)) AS annatNamn FROM t_members"
Om du inte sparat i datumfält.
Ii-orMedlem sedan nov. 2001294 inlägg Det är datetime-format på f_online och cdate hjälpte inte.
@ndersMedlem sedan juni 200032 967 inläggMySQL använder inte samma datumfunktioner som finns i Jet SQL / Access. Se här. Dock borde ju faktiskt Year() fungera.
Jag undrar om det inte är en begränsning i MyODBC? När jag testade precis att köra frågan via php så ser det ut att fungera galant.
Du skrev att du provade att köra selectfrågan med ett alias, använde du det när hämtade ut värdet också? f_online = RecSet("dittAliasNamn") alltså?
Mvh,
Ii-orMedlem sedan nov. 2001294 inlägg Jo, jag har kollat på MySQL:s "Date och Time"-funktioner och jag hämtade värdet med aliasnamnet.
Om det är en begränsning i MyODBC, vad ska jag göra åt saken?
I vissa fall skulle jag kunna lösa det med if-satser, men då kommer koden bli väldigt komplicerad och prestandakrävande.
LLarsGMedlem sedan dec. 200012 464 inlägg Du kan testa att sätta en option i din connection
option=16384
Ii-orMedlem sedan nov. 2001294 inlägg Funkade finfint! Tack så hemskt mycket!