ฉันจะแทรก DATETIME ภายในสตูดิโอ mgmt ของเซิร์ฟเวอร์ SQL ได้อย่างไร


103

ฉันมีเว็บไซต์ที่แทรกลงในตารางด้านล่างนี้ ฉันจำเป็นต้องทำการแทรกด้วยตนเอง แต่ฉันไม่แน่ใจว่าจะส่งผ่านได้อย่างไรให้เทียบเท่า DateTime ตอนนี้อยู่ใน C #

ฉันกำลังเรียกใช้สิ่งนี้ด้านล่างจากตัวแก้ไขแบบสอบถามในสตูดิโอ mgmt ของเซิร์ฟเวอร์ SQL มีวิธีใดบ้างที่จะส่งผ่านวันเวลาปัจจุบันในแบบสอบถามด้านล่างนี้

INSERT INTO [Business]
           ([IsDeleted]
           ,[FirstName]
           ,[LastName]
           ,[LastUpdated]
           ,[LastUpdatedBy])
     VALUES
           (0, 'Joe', 'Thomas', 
           ,<LastUpdated, datetime,>
           ,<LastUpdatedBy, nvarchar(50),>)

คำตอบ:


176

ใช้CURRENT_TIMESTAMP (หรือ GETDATE () บน SQL Server เวอร์ชันเก่า)


3
"ฟังก์ชันนี้เป็น ANSI SQL เทียบเท่ากับ GETDATE" ไม่ใช่ ANSI ไม่ใช่ยุคก่อนประวัติศาสตร์
gbn

3
ฉันไม่สามารถนึกถึงเหตุผลที่ดีในการเขียน SQL ที่ไม่ได้มาตรฐานเมื่อเวอร์ชันมาตรฐานใช้งานได้ดีเช่นกัน
Craig Stuntz

1
@CraigStuntz ดังนั้น CURRENT_TIMESTAMP จึงเป็นเวอร์ชัน ANSI ถูกต้องหรือไม่
Felipe

47

เพียงใช้GETDATE()หรือGETUTCDATE()(หากคุณต้องการรับเวลา UTC "สากล" แทนเวลาที่เกี่ยวข้องกับเขตเวลาของเซิร์ฟเวอร์ในพื้นที่ของคุณ)

INSERT INTO [Business]
           ([IsDeleted]
           ,[FirstName]
           ,[LastName]
           ,[LastUpdated]
           ,[LastUpdatedBy])
     VALUES
           (0, 'Joe', 'Thomas', 
           GETDATE(),  <LastUpdatedBy, nvarchar(50),>)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.