2 Stimmen

SQLserver Timestamp, der versucht, einen Standard festzulegen, erhält ein unlesbares Ergebnis

Ich habe ein Zeitstempelfeld in einer Tabelle und ich habe das Kästchen im Designer deaktiviert, um Nullen zuzulassen. Ich kann nichts in das Feld für den Standardwert und die Bindung eingeben (dieses Feld ist ausgegraut und lässt keine Eingabe zu). Ich probiere alle meine SQL-Experimente im Query Designer von SQL Server Express 2008 aus.

Wenn ich einen neuen Datensatz in die Tabelle einfüge, gibt das Feld "Zeitstempel" einen Wert an, der wie folgt aussieht: 0x00000000000007D7

Wie Sie sehen können, ist dies völlig unleserlich:

Wie kann ich das umgehen/einen lesbaren Zeitstempel hineinbekommen?

4voto

Code Magician Punkte 22181

Verwenden Sie DATETIME mit einer Standardbeschränkung von GETDATE

Das kann man so machen:

CREATE TABLE myTable
(
    ID INT IDENTITY(1,1) PRIMARY KEY CLUSTERED,
    myTimeStamp datetime NOT NULL DEFAULT GETDATE()
)

TIMESTAMP ist ein binäres Feld, das für die Zeilenversionierung verwendet wird und nicht bearbeitet werden kann.

Von BOL :

timestamp ist ein Datentyp, der automatisch generierte Binärzahlen darstellt, die innerhalb einer Datenbank garantiert eindeutig sind. timestamp wird typischerweise als Mechanismus für die Versionsstempelung von Tabellen Zeilen. Die Speichergröße beträgt 8 Byte.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X