Konvertering af table fra TIMESTAMP til DATETIME

Tags:    mysql

Hejsa,

Jeg er stødt på et hovedbrud. Er der nogle som har et bud på hvordan jeg konverterer en table i MySQL fra TIMESTAMP (fx: 1526363049) til DATETIME (fx: 2018-05-15 05:44:09).

Sidder og prøver at migrere data fra et andet CMS til WordPress.

Jeg har forsøgt mig frem siden i går, dog uden noget held. Jeg har læst https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_from-unixtime men har desværre ikke haft held/evner til at løse problemet endnu.

Håber på hjælp.



2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hej Kim.

Lad os sige at du har en tabel med navnet mytable.
Den tabel har kolonnen mytimestamp, som er af typen timestamp.

Hvis du vil ændre noget select-SQL så det vælger indholdet af mytimestamp, men konverterer det til datetime - så kan du gøre noget i denne stil FROM_UNIXTIME(UNIX_TIMESTAMP(mytimestamp)) der hvor du vælger mytimestamp i din select.

Hvis du vil konvertere kolonnen fra timestamp til datetime, så skal du lave en ny kolonne i datetime, kopiere alle de gamle timestamp værdier over i den nye datetime og droppe den gamle kolonne. Eventuelt ændre navn på kolonnen.

Her er hvordan du tilføjer en ny kolonne med datetime, kopierer den gamle kolonne mytimestamp over i den nye mydatetime og til sidst smider den gamle ud:

ALTER TABLE mytable ADD COLUMN mydatetime DATETIME;

UPDATE mytable SET mydatetime=FROM_UNIXTIME(UNIX_TIMESTAMP(mytimestamp));

ALTER TABLE mytable DROP COLUMN mytimestamp;

Håber det hjælper lidt.



Det hjalp mig gevaldigt :-)

ALTER TABLE mytable ADD COLUMN mydatetime DATETIME;
UPDATE mytable SET mydatetime=FROM_UNIXTIME(UNIX_TIMESTAMP(mytimestamp));
ALTER TABLE mytable DROP COLUMN mytimestamp;

Den midterste kommando drillede mig dog, men nedenstående virkede:

UPDATE mytable SET mydatetime=FROM_UNIXTIME(mytimestamp)

Jeg er superglad for hjælpen og jeg værdsætter det højt at man kan trække på lidt hjælp herinde af og til :-)

Du og I andre må have en rigtig god dag :-)



t