नीचे दी गई तालिका निर्माण स्क्रिप्ट पर विचार करें:
create_table :foo do |t|
t.datetime :starts_at, :null => false
end
क्या वर्तमान समय में डिफ़ॉल्ट मान सेट करना संभव है?
मैं नीचे दिए गए SQL स्तंभ परिभाषाओं के लिए रेल में एक DB स्वतंत्र समकक्ष खोजने की कोशिश कर रहा हूँ:
ओरेकल सिंटेक्स
start_at DATE DEFAULT SYSDATE()
MySQL सिंटेक्स
start_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
या
start_at DATETIME DEFAULT NOW()
CURRENT_TIMESTAMPमें वर्तमान लेनदेन की शुरुआत का समय होगा, इसलिए एक ही लेनदेन में बनाए गए कई रिकॉर्डों को समान मूल्य मिलेगा। यदि आप वास्तविक वर्तमान समय चाहते हैं तो स्टेटमेंट निष्पादित होता है (लेन-देन के संदर्भ की अनदेखी), जाँच करेंCLOCK_TIMESTAMP।