मेरे पास एक सारणी है जहां प्रत्येक पंक्ति को उस समय के निशान को चिह्नित करने की आवश्यकता होती है जब उसे डाला जाता है। मेरे पास बहुत सारे डेटाबेस अनुभव नहीं हैं, लेकिन कुछ मुझे बताता है कि यह डेटाबेस की तरफ स्वचालित रूप से संभाला जाएगा, उदाहरण के लिए संग्रहीत प्रक्रिया के माध्यम से।मैं SQL सर्वर में टाइमस्टैम्प कैसे संग्रहीत/पुनर्प्राप्त कर सकता हूं?
एमएस एसक्यूएल में टाइमस्टैम्प डेटाटाइप है, लेकिन इसके बारे में पढ़ना, इसे संख्याओं की श्रृंखला के रूप में माना जाता है, न कि सी # में डेटटाइम ऑब्जेक्ट के रूप में। तो अगर मैं रूपांतरण करना चाहता हूं तो क्या यह सिर्फ एक एनवीएआरएआरएआर डेटाटाइप नहीं हो सकता है?
तो बस डालें, एक टेबल पर डालने पर एक टाइमस्टैम्प को स्वचालित रूप से (स्वचालित रूप से?) डालने का सबसे आसान तरीका क्या है?
संपादित करें: तालिका परिभाषा बहुत सरल है। इस समय केवल दो कॉलम हैं और अभी भी टाइमस्टैम्प कॉलम की कमी है।
SqlCommand command = con.CreateCommand();
command.CommandText = "INSERT INTO Bio VALUES (" +
"@ID, @Name)";
command.Parameters.AddWithValue("ID",number);
command.Parameters.AddWithValue("Name", name);
try
{
SqlDataReader thisReader = command.ExecuteReader();
thisReader.Close();
}
catch { // Do something };
समाधान ठीक है, यह अब काम करता है। मैंने पहली बार विजुअल स्टूडियो 2008 में सर्वर एक्सप्लोरर विंडो के माध्यम से नया कॉलम जोड़ने का प्रयास किया। मेरा डेटाबेस ढूँढना, राइट क्लिक करें और "नई क्वेरी" का चयन करें। तब
ALTER TABLE dbo.MyTable ADD CreatedDate datetime NOT NULL DEFAULT (GetUtcDate())
की तरह कुछ टाइपिंग लेकिन मैं संदेश है कि
ALTER टेबल एसक्यूएल निर्माण समर्थित नहीं है क्वेरी आरेख और मानदंड फलक में रेखांकन नहीं दर्शाया जा सकता मिल गया।
तो इसके बजाय मैंने इसे ग्राफिक रूप से जोड़ा। पहले "ओपन टेबल परिभाषा" और डेटा प्रकार के तहत कॉलम नाम और डेटाटाइम के तहत निर्मितडेट जोड़ना। अनुमति नल की जांच को हटा रहा है। फिर कॉलम प्रॉपर्टीज में मैंने
getutcdate()
"डिफ़ॉल्ट मान या बाध्यकारी" नामक पंक्ति में सामान्य अनुभाग के तहत जोड़ा गया। जब भी कोई नई पंक्ति डाली जाती है, तो डेटाबेस स्वचालित रूप से वर्तमान दिनांक और समय को टाइमस्टैम्प के रूप में देता है।
मैंने इस कमांड लाइन का उपयोग करने की कोशिश की, लेकिन ग्राफिकल संपादक को आसान पाया। मैंने जो किया वह मूल प्रश्न के नीचे जोड़ा गया है। सहायता के लिए धनयवाद। –
मुझे पता है कि यह वास्तव में एक पुराना सवाल है, लेकिन शानदार जवाब! – Tom