insert timestamp

Programmierung mit PostgreSQL (C#, PHP, Perl, Java, ...)

insert timestamp

Beitragvon meisteride » Do 17. Jan 2008, 10:21

Hallo,

ich möchte über ein Formular daten in einer tabelle speichern. Dies funktioniert auch super. Jetzt habe ich der Tabelle eine Spalte mit timestamp hinzugefügt, für die dokumentation der Tabelle.

Wenn ich jetzt einen Eintrag vornehme, müßte eigentlich in der Spalte timestamp das aktuelle Datum eintragen...nur wie mache ich das?

va_nr = Veranstaltungsnummer
gid = GemeindeID
erstellt_am = timestamp

[php]
$sql = "INSERT INTO verknuepfung (va_nr, gid, erstellt_am)
VALUES ('$value', '$value1', '')";
$res = pg_query($sql);
[/php]

Fehlermeldung:
Query failed: ERROR: invalid input syntax for type timestamp

Was mache ich falsch? was für eine syntax muss ich angeben?
Muss ich vorher in meinem php code eine variable mit dem wert timestamp erzeugen?

danke und gruß
meisteride
Neuer Benutzer
 
Beiträge: 6
Registriert: Mo 19. Nov 2007, 12:02

Beitragvon akretschmer » Do 17. Jan 2008, 10:41

meisteride hat geschrieben:
Was mache ich falsch? was für eine syntax muss ich angeben?
Muss ich vorher in meinem php code eine variable mit dem wert timestamp erzeugen?

danke und gruß



Definiere das als timestamptz default now() (oder default current_timestamp) und gebe das bei INSERT nicht an.

Andreas
--
ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)

https://www.xing.com/profile/Andreas_Kretschmer7
Hosting-Provider mit PostgreSQL-Support gesucht? Mich fragen!
akretschmer
Erfahrener Benutzer
 
Beiträge: 5954
Registriert: So 29. Okt 2006, 14:35
Wohnort: Kaufbach, Sachsen, Germany, Germany

Beitragvon meisteride » Do 17. Jan 2008, 10:55

Hallo,

bin gerade ein bissle neben der spur...sorry

was meinst du damit, defeniere das als ...?
Wo muß ich das defiinieren, in meiner Tabbelle oder in php?

meine spalte habe ich als "timestamp without timme zone" definiert.

danke!!!
meisteride
Neuer Benutzer
 
Beiträge: 6
Registriert: Mo 19. Nov 2007, 12:02

Beitragvon akretschmer » Do 17. Jan 2008, 11:21

meisteride hat geschrieben:Hallo,

bin gerade ein bissle neben der spur...sorry

was meinst du damit, defeniere das als ...?
Wo muß ich das defiinieren, in meiner Tabbelle oder in php?

meine spalte habe ich als "timestamp without timme zone" definiert.

danke!!!


Code: Alles auswählen
test=# create table ts_test (id int, ts timestamptz default now());
CREATE TABLE
test=*# insert into ts_test(id) values(1);
INSERT 0 1
test=*# select * from ts_test;
 id |              ts
----+-------------------------------
  1 | 2008-01-17 10:20:35.263368+01
(1 row)


Andreas
--
ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)

https://www.xing.com/profile/Andreas_Kretschmer7
Hosting-Provider mit PostgreSQL-Support gesucht? Mich fragen!
akretschmer
Erfahrener Benutzer
 
Beiträge: 5954
Registriert: So 29. Okt 2006, 14:35
Wohnort: Kaufbach, Sachsen, Germany, Germany

Beitragvon meisteride » Do 17. Jan 2008, 12:05

danke für die hilfe,

jetzt funktioniert es!!!

mit
Code: Alles auswählen
[B][size=84]CREATE[/size][/B][size=84] [B]TABLE[/B] plakatierte_gemeinde[/size]
[size=84][color=#ff0000]([/color][/size]
[size=84]id serial [B]NOT[/B] [B]NULL[/B][/size][size=84][color=#ff0000],[/color][/size]
[size=84]va_nr [B]integer[/B][/size][size=84][color=#ff0000],[/color][/size]
[size=84]gid [B]integer[/B][/size][size=84][color=#ff0000],[/color][/size]
[size=84]erstellt_am timestamptz [B]default[/B] [/size][size=84][color=#0000f0]now[/color][/size][size=84][color=#ff0000]());[/color][/size]
meisteride
Neuer Benutzer
 
Beiträge: 6
Registriert: Mo 19. Nov 2007, 12:02


Zurück zu Programmierung

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste