Cruz: Sybase timestamp conversion

Hallo Leute,

weiß jemand wie ich in einem Query (Sybase) den timestamp Datentyp in irgendetwas lesbares konvertieren kann? convert(varchar(30),feldname) klappt da nicht so toll.

Gruß
Cruz

  1. Hallo Leute,

    weiß jemand wie ich in einem Query (Sybase) den timestamp Datentyp in irgendetwas lesbares konvertieren kann? convert(varchar(30),feldname) klappt da nicht so toll.

    Gruß
    Cruz

    Hallo Cruz,
    Da die Sybase-Datenbank und der SQL-Server der Microsoft sehr ähnlich sind,zitiere ich mal das M$-Handbuch
    <zitat>
    timestamp
    Wird verwendet, um die Abfolge der SQL Server-Aktivitäten für eine Zeile zu kennzeichnen, und wird in Form einer ansteigenden Zahl in einem binären Format dargestellt. Wenn eine Zeile in einer Tabelle geändert wird, wird der Timestamp mit dem Wert des aktuellen Datenbanktimestamps aktualisiert, der von der @@DBTS-Funktion erhalten wird. Daten des timestamp-Datentyps stehen in keiner Beziehung zu dem Datum und der Uhrzeit der Einfügung oder Änderung von Daten. Wenn der Zeitpunkt automatisch aufgezeichnet werden soll, zu dem Datenänderungen in einer Tabelle vorgenommen werden, verwenden Sie entweder den datetime- oder den smalldatetime-Datentyp für die Aufzeichnung von Ereignissen und Triggern
    </zitat>

    So gesehen ist das einfach irgendeine Zahl, welche nur die Bedeutung hat den zeitlichen Ablauf zu dokumentieren.

    mit zwei Worten: vergiß es

    Grüße
    Klaus

    1. mit zwei Worten: vergiß es

      Grüße
      Klaus

      Hi again Klaus,

      :( das klingt ja wirklich zerschmetternd. Warum können die Jungs denn den Timestamp nicht mit Sekunden nach 1970 belegen oder so, damit man dieses Feld auch optimal nutzen kann?
      So habe ich ja gar keine Wahl, als einen normalen datetime zu verwenden und den immer manuell abzudaten.
      Na ja..die Micros denken ja häufiger Dinge nicht zu ende.

      Vielen Dank für die Info
      Cruz

      1. Hallo Cruz,

        So habe ich ja gar keine Wahl, als einen normalen datetime zu verwenden und den immer manuell

        abzudaten.
        mit 'getdate()' ist's nicht ganz so schlimm.
        Du kannst ja ein berechnetes Feld einsetzen, bei dem Du 'getdate()' als Formel verwendest.
        CREATE TABLE xy
           (
            ... hier die üblichen Felder
            AENDERDATUM AS GETDATE()
           )

        Na ja..die Micros denken ja häufiger Dinge nicht zu ende.

        Also diemal waren es die Leute bei Sybase. der M$ SQL-Server ist eigentlich historisch ein lizensierter Sybase Server ( bis Version 4.2 denk ich).

        Grüße
        Klaus

        1. mit 'getdate()' ist's nicht ganz so schlimm.

          J aich weiß, nur leider ist die Systemzeit meiner Sybase Datenbank total falsch eingestellt, und die Sysadmins checken es einfach nicht. Ich weiß nicht, ob es einen Weg gibt das per Script einzustellen, aber da für das Datum auch eine kleine Perl Routine ausreicht, is es sowieso egal.

          Also diemal waren es die Leute bei Sybase. der M$ SQL-Server ist eigentlich historisch ein lizensierter Sybase Server ( bis Version 4.2 denk ich).

          Oh..ich dachte, daß diesmal Sybase die Engine von MS geklaut hat, freut mich, daß es wieder mal umgekert ist. :)