[SQL] Postgresql Insert Date

Pagina: 1
Acties:

  • cool0
  • Registratie: Februari 2001
  • Laatst online: 14-06 16:49
Ik ben met een database bezig voor school hij is gelukkig bijna af :)
echter zit ik met 1 probleem ik heb in me database in kolom gespecificeerd met het type DATE. Omdat hier de datum ingevoerd moet worden echter als ik nu het volgende insert commando geef

insert into support
(supportid, customer, datesupport, support, supporttype, vesselname, engineer)
values (1, 1, 6-7-2003, 'test', 2, 1, 1)
;

komt Postgresql terug met de volgende melding

ERROR: Unable to identify a prefix operator '#' for type 'integer'
You may need to add parentheses or an explicit cast


Ok ik specifeer de datum in mijn insert commando niet goed nu heb ik zitten zoeken in de handleiding van postgresql en hier op tweakers maar ik heb nergens het goede insert commando weten te vinden iemand die het hier toevallig wel weet?

Ik vrees niet de man die 10.000 trappen heeft beoefend maar de man die 1 trap 10.000 keer heeft geoefend


  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Is dit niet wat je zoekt?
Kortom, vervang je - door / of voer het in via de ISO-8601 norm (yyyy-mm-dd)

Verwijderd

Misschien de datum tussen enkele aanhalingstekens zetten.

  • jochemd
  • Registratie: November 2000
  • Laatst online: 08-08 15:51
cool0 schreef op 25 October 2003 @ 00:54:

echter zit ik met 1 probleem ik heb in me database in kolom gespecificeerd met het type DATE. Omdat hier de datum ingevoerd moet worden echter als ik nu het volgende insert commando geef

insert into support
(supportid, customer, datesupport, support, supporttype, vesselname, engineer)
values (1, 1, 6-7-2003, 'test', 2, 1, 1)
;

komt Postgresql terug met de volgende melding

ERROR: Unable to identify a prefix operator '#' for type 'integer'
You may need to add parentheses or an explicit cast
Lijkt me logisch hè, 6 - 7 - 2003 = -2004, en welke datum is -2004 nou?

Probeer het eens met:
code:
1
2
3
4
insert into support
    (supportid, customer, datesupport, support, supporttype, vesselname, engineer)
values
    (1, 1, '2003-07-06', 'test', 2, 1, 1)

De notatie yyyy-mm-dd is iets beter dan wat jij gebruikt, want ik weet niet welke datum je eigenlijk bedoelt. Overigens, school = overheid, en voor overheid is gebruik van nationale normen verplicht. Dus zelfs als de huidige notatie om de een of andere reden niet voor meerdere interpretaties vatbaar zou zijn, dan ben je nog steeds verplicht om volgens norm NEN-ISO 8601 je datumnotatie in het formaat yyyy-mm-dd te doen.

[ Voor 6% gewijzigd door jochemd op 25-10-2003 12:32 ]


  • JaQ
  • Registratie: Juni 2001
  • Laatst online: 17:50

JaQ

Zoals Rossum terecht aanvoert moet je de datum tussen aanhalingstekens zetten.

Ook bestaat er zoiets als typecasten (dus meegeven in je insert wat het type van het veld is). Hoe dat werkt kan je prima vinden in de manual (als ik me niet vergis onder type conversions).

Egoist: A person of low taste, more interested in themselves than in me