एसक्यूएल सर्वर के TIMESTAMP
डेटाप्रकार कुछ भी नहीं एक तारीख और समय के साथ क्या करना है!
यह लगातार संख्या का एक द्विआधारी प्रतिनिधित्व है - यह सुनिश्चित करने के लिए केवल एक अच्छा है कि इसे पढ़ने के बाद से कोई पंक्ति नहीं बदली है।
SQL सर्वर के नए संस्करणों में, इसे RowVersion
कहा जा रहा है - क्योंकि यह वास्तव में यह है। देखें MSDN docs on ROWVERSION:
एक डेटा प्रकार है कि एक डेटाबेस के भीतर स्वचालित रूप से उत्पन्न, अद्वितीय द्विआधारी संख्या को उजागर करता है। पंक्ति-वर्जन आमतौर पर संस्करण-मुद्रांकन तालिका पंक्तियों के लिए एक तंत्र के रूप में उपयोग किया जाता है। पंक्तिवर्ती डेटा प्रकार केवल एक वृद्धि संख्या है और कोई दिनांक या समय संरक्षित नहीं करता है। दिनांक या समय रिकॉर्ड करने के लिए, डेटाटाइम 2 डेटा प्रकार का उपयोग करें।
तो तुम दिनांक/समय के लिए एक एसक्यूएल सर्वर TIMESTAMP
परिवर्तित नहीं कर सकते हैं - यह सिर्फ एक दिनांक/समय नहीं है।
लेकिन यदि आप टाइमस्टैंप कह रहे हैं लेकिन वास्तव में आपका मतलब DATETIME
कॉलम है - तो आप एमएसडीएन सहायता में CAST and CONVERT विषय में वर्णित उन वैध दिनांक स्वरूपों का उपयोग कर सकते हैं। जिन्हें SQL सर्वर द्वारा "बॉक्स से बाहर" परिभाषित और समर्थित किया गया है। कुछ और समर्थित नहीं है, उदा। आपको बहुत सारे मैन्युअल कास्टिंग और कॉन्सटेनेटिंग (अनुशंसित नहीं) करना है।
DECLARE @today DATETIME = SYSDATETIME()
SELECT CONVERT(VARCHAR(50), @today, 121)
देता है::
2011-11-14 10:29:00.470
SQL Server 2012 will finally have a FORMAT
function कस्टम स्वरूपण करने के लिए ...
प्रारूप आप देख रहे हैं विहित (शैली = 121) ODBC की तरह एक सा लग रहा है ...
स्रोत
2011-11-14 09:18:28
शायद SQL सर्वर के साथ मेरी सबसे बड़ी आस्तीन। अगर मैं इसके साथ समय नहीं बता सकता तो इसे टाइमस्टैम्प क्यों कहते हैं? – BelgoCanadian
@ बेल्गो कानाडियन: Sybase से पूछें - यह एक सुविधा है जो हमेशा के लिए Sybase/SQL सर्वर में रही है ..... –