Har du selv fundet på din query? For det ligner ikke rigtig nogen form for SQL - det er sådan en god blanding af alle mulige forskellige sql-queries...
UPDATE laves som:
UPDATE user_reg SET date_column = 1016023608 WHERE id = 123
Så opdaterer du date_column for brugeren med id=123 til det timestamp, som du angiver.
ja jeg har selv lavet den, men den er blot til eksempel på hvordan jeg gerne vil have det :-)
Jeg har lige nu ca 3000 datoer i user_regdate feltet som et timestamp, og disse værdier vil jeg have konverteret til en "rigtig" dato, så jeg er ude efter en måde at hente timestamp på, og ændre værdien til eks. sep 21, 2003
Regnede med at jeg måske kunne bruge denne på en måde, men alle forslag er velkomne: date('m/d-Y H:i:s', 1016023608); (denne funktion giver det output jeg gerne vil opdatere databasens værdier til)
Du kan ikke bruge en php-funktion i mysql - af logiske årsager. Men som erikjacobsen lidt bedre havde forstået, så er du ude i at lave et nyt felt at typen DATETIME og overføre værdierne hertil.
jeg har overført nogle brugere fra et CMS der brugte timestamp som oprettelsesdato, til et andet som bruger INT(20) med standard værdi 21. sep, 2005 eksempelvis, så nu står de gamle brugere i CMS som om dere oprettelses dato er: 1016023608 og ikke 21. sep. 2003 - de nye der tilmelder sig er ok
Du kan _ikke_ gemme almindelige datoer i et INT-felt - af gode årsager :) INT-feltet kan du bruge til at gemme unix-timestamps og så konverterer dem til et passende tal, når du hiver dem ud.
Med mindre du altså vil gemme tallet 20050930120000 (for klokken 12 frokost idag) i et INT-felt - men så er vi ude i noget nær det grimmeste database-design, jeg kan forestille mig :/
Du vil altså i tabellen have stående "21. sep. 2003" - og ikke en DATETIME eller DATE ? Min anbefaling er at opbevare i det format, der bedst lader sig repræsentere i tabellen, i dette tilfælde DATE, og så bestemme andetsteds hvordan det skal vises for brugerne. Så hvis du skal have hjælp til det, så skal jeg gerne - ellers smutter jeg.
ericjocobsen--> det er jo ikke fordi jeg påstår det er det bedst programmerede cms system jeg har brugt, men jeg kan ikke ændre databasen, da hele sitet så dør :-( Det er PHPNUKE der har lavet det, så jeg er NØD til at beholde varchar(20) feltet til DATE() værdien..kan/vil du hjælpe?
Fordi det er 3000 amatører! Spørg enhver, der ved bare det mindste om databasedesign, om det er en fornuftig strategi - og de vil løbe skrigende bort! Jeg forsøger ikke at sætte mig selv op på nogen piedestal som den eneste med sandheden - men ovenstående _er_ tåbeligt!
barklund- det er netop problemet, at det opdaterer alle felter med samme dato, jeg skulle gerne have den rigtige værdi opdateret, det er her det bliver svært, og derfor jeg spørger her på EKSPERTEN :-)
Jeg tror gerne de er amatører, men jeg er bare ikke selv dygtig nog til at ændre det radikalt, og må derfor bruge deres måder :(
ericjacobsen--> måske jeg misforstod hvad du skrev, det er ok med mig at putte DATE værdi i mit varchar(20)felt , det behøver ikke være "21. sep, 2005". Det er blot vigtigt at jeg får den rigtige værdi konverteret fra den værdi der er nu som Timestamp
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.