[LØST] Endre dato format i mysql

13 innlegg i emnet

Skrevet

Sliter med å få endret datoformatet i et date felt i en tabell fra yyyy-mm-dd til dd-mm-yyyy. Noen som har noen tips her?

Jeg trenger ikke php kode som skriver det ut i riktig format. Jeg vil ha det i riktig format i databasen. Hvis det i det hele tatt er mulig.

Prøvde å gjøre det sånn men det ser ikke ut som det fungerte:

CREATE TABLE Product (

Prod_ID int(4) NOT NULL auto_increment,

Prod_Name varchar(20) default 0,

Prod_Description text,

Prod_Publisher varchar(15),

Prod_EntryDate date default 00-00-0000

)

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Joda.. google er din venn.. Men jeg har nå lest kjapt over den siden der og såvidt jeg kan se så er alt der yyyy-mm-dd og ikke dd-mm-yyyy. Mulig jeg tar feil.. har det litt travelt nå så jeg skal se litt nærmere på det siden..

Hvis noen andre har vært borti det her så hadde jeg satt pris på en Create table statement som ordner biffen ..

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Hei

Du kan jo se her på Denne siden.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Hei

Du kan jo se her på Denne siden.

Det er jo egentlig ikke dette han spør om. Regner med at han er klar over denne/disse funksjoene ettersom han sier han ikke trenger php-koden (dette er vel egentlig sql-spørringen men...).

Jeg bruker date_format() funksjoene for å lagre til databasen, og hente ut informasjonen, selve tabellen har jeg ikke brydd meg om å forandre pga det som oftest er andre som eier serverne, dvs at jeg ikke har mulighet til å forandre i konfigurasjonsfilene til mysql for å få til en slik endring.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Det er riktig som Loko sier.. jeg bryr meg ingenting om php koden for å hente det ut fra databasen og skrive det ut riktig.

Det her er et rent mysql spørsmål. Hvordan lage en tabell med et datofelt som aksepterer dato formatert dd-mm-yyyy og IKKE yyyy-mm-dd.

Det er kun interessant å lagre dato dd-mm-yyyy og kunne hente den ut direkte på samme måten. Og jeg er fullt klar over at det kanskje ikke går, men jeg er lysten på å få det bekreftet så jeg slipper å kaste bort mer tid på å lete..

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Det er kun interessant å lagre dato dd-mm-yyyy og kunne hente den ut direkte på samme måten. Og jeg er fullt klar over at det kanskje ikke går, men jeg er lysten på å få det bekreftet så jeg slipper å kaste bort mer tid på å lete..

Så lenge det er alt du trenger kan du bruke CHAR(10) som datatype. MySQL vil da behandle dette som ren tekst, men det gjør ikke noe slik du har trengt å bruke det.

Jeg har problemer med å forstå hva som er poenget med dette, men det får du vel styre med selv.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Det her er til en skoleoppgave. Og vi skal bare lage en database i mysql som vi skal hente ut informasjon fra. Derfor gidder jeg ikke bruke tid på å lage noe i php som vil hjelpe meg å mate data inn i databasen..

Og det var en som fortalte meg at jeg kunne bruke currdate() når jeg mater inn datoer i mysql, men at formatet på den var dd-mm-yyyy.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Og det var en som fortalte meg at jeg kunne bruke curdate() når jeg mater inn datoer i mysql, men at formatet på den var dd-mm-yyyy.

Curdate() returnerer: yyyy-mm-dd. Om du vil ha datoene på noen annen form, må du endre dem med date_format() funksjonen som er nevnt tidligere.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Det er riktig som Loko sier.. jeg bryr meg ingenting om php koden for å hente det ut fra databasen og skrive det ut riktig.

Det her er et rent mysql spørsmål. Hvordan lage en tabell med et datofelt som aksepterer dato formatert dd-mm-yyyy og IKKE yyyy-mm-dd.

Det er kun interessant å lagre dato dd-mm-yyyy og kunne hente den ut direkte på samme måten. Og jeg er fullt klar over at det kanskje ikke går, men jeg er lysten på å få det bekreftet så jeg slipper å kaste bort mer tid på å lete..

Mysql lagre dato/tid felter etter iso dato standar yyyy-mm-dd hh24:mi:ss

Skal du bruke et datofelt lagres de på denne måte. Er det ikke viktig at det er et dato felt kan du lagre det i et varchar felt og bruke php funksjonen date()

$dato = date("d-m-Y");

$dato vil da inneholde dagens dato på formatet du ønsker.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Det her er et rent mysql spørsmål. Hvordan lage en tabell med et datofelt som aksepterer dato formatert dd-mm-yyyy og IKKE yyyy-mm-dd.

Det er kun interessant å lagre dato dd-mm-yyyy og kunne hente den ut direkte på samme måten. Og jeg er fullt klar over at det kanskje ikke går, men jeg er lysten på å få det bekreftet så jeg slipper å kaste bort mer tid på å lete..

Som det sies her så må du da bruke et char eller varchar felt. Ingen datofelt som aksepterer den verdien du ønsker og du kan ikke bruke NOW() og currdate().

Når det er sagt så hvis du ikke har en veldig god grunn for dette så vil jeg ikke anbefale deg å gjøre det. En ting er at du mister muligheten til å sette NOW() ol, men i tillegg ødelegger du muligheten for å sortere innleggene etter dato. Derfor anbefaler jeg å lagre datoen slik og bruke DATE_FORMAT i spørringen til å få ut datoen i det formatet du ønsker.

Men hvis du er klar over det og vil gjøre det alikevel så bruk char(10), så burde det løse problemet ditt.

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Har på en måte gitt opp og bruker bestemt meg for å bruke datoformat yyyy-mm-dd. Setter ikke tråden som løst ettersom jeg ikke anser det som en løsning å bytte fra date til varchar. Men takk til de som har tatt seg tid til å svare likevel.. :thumbup:

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Skrevet

Hvis du ser på svarene du har fått så vil du se at saken din er løst. Helt enkelt fordi det du ønsker ikke støttes av MySQL!

0

Del dette innlegget


Lenke til innlegg
Del på andre sider

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!


Start en konto

Logg inn

Har du allerede en konto? Logg inn her.


Logg inn nå

  • Hvem er aktive   0 medlemmer

    Ingen innloggede medlemmer aktive