Announcement

Collapse
No announcement yet.

Insert eines Datum

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Insert eines Datum

    Hallo,

    ich möchte mit

    insert into Tabelle (..) values (..)

    ein Datum auf ein Datetime-Feld schreiben. In welchem Format muß das Datum sein, damit ich das da reinbekomme?

    Wenn ich z.B.

    insert into Tabelle (Datum) values (getdate())

    mache, dann klappt das. Das Datum wird eingetragen und ist auch korret.

    Bei

    select getdate ()

    bekomme ich das Datum folgendermaßen angezeigt:

    2008-04-14 14:22:13.970

    Wenn ich nun beides kombiniere:

    insert into Tabelle (Datum) values (2008-04-14 14:22:13.970)

    Dann bekomme ich einen Fehler, "Falscher Sytax".

    Wie muß denn das Datum aussehen, damit ich es über einen Insert wieder in die Tabelle schreiben kann?

    Grüße, Avhy.

  • #2
    Du musst das als String mitgeben, also mit einfachen Anführungszeichen begrenzen, zB
    insert into Tabelle (Datum) values ('20080414')

    bye,
    Helmut

    Comment


    • #3
      Hallo Helmut,

      hatte ich auch schonprobiert. Aber so formuliert erhalte ich den Fehler:

      insert into Tabelle (Datum) values ('2008-04-14 14:30:43.400')

      Meldung 242, Ebene 16, Status 3, Zeile 2
      Bei der Konvertierung eines char-Datentyps in einen datetime-Datentyp liegt der datetime-Wert außerhalb des gültigen Bereichs.
      Die Anweisung wurde beendet.

      Comment


      • #4
        Hallo Avhy,

        zuweilen tut sich der SQL Server mit impliziter Typkonvertierung schwer; gib ihm besser explizit an, was für ein Format Du hast

        select convert(datetime, '2008-04-14 14:30:43.400', 121)
        oder
        select {ts N'2008-04-14 14:30:43.400'}

        Olaf
        Olaf Helper

        <Blog> <Xing>
        * cogito ergo sum * errare humanum est * quote erat demonstrandum *
        Wenn ich denke, ist das ein Fehler und das beweise ich täglich

        Comment


        • #5
          Juhu! - So funktioniert's!

          insert into Tabelle (Datum) values (convert(datetime, '2008-04-14 14:30:43.400', 121))

          Comment


          • #6
            Dankeschöööööööööööööööönnn!!!

            Comment


            • #7
              Übrigens, wenn Du die Uhrzeit nicht brauchst, solltest Du sie besser weg lassen, nicht das Du in diese Fall tappst:

              select convert(datetime, '2008-04-14 23:59:59.999', 121)
              Olaf Helper

              <Blog> <Xing>
              * cogito ergo sum * errare humanum est * quote erat demonstrandum *
              Wenn ich denke, ist das ein Fehler und das beweise ich täglich

              Comment

              Working...
              X