I have a field that when something is inserted I want it to get the curr开发者_开发问答ent Date & Time and insert this into the database. Is there a way to get the date & time, and set it as the default value?
Currently the default value is: (getdate()) Which sets only the date. How do I also set the time?
GETDATE()
is a date and time in SQL Server.
Run SELECT GETDATE()
to verify this.
What is the datatype of your field? If it's DATE
then it will not hold time values as well.
One easy way is to give the field a default constraint:
create table YourTable
(
... other columns ...
CreateDt datetime default getdate(),
... other columns ...
)
A disadvantage of this method is that you can overwrite the value by specifying it in an insert
clause.
Personally I would like to use GETUTCDATE() instead GETDATE() to avoid confusions.
SYSDATETIME()
will get the current date and time.
Make sure the data type of the column is datetime
, and not just date
or it won't be able to hold a datetime.
Most SQL implementations (engines) do have CURRENT_TIMESTAMP
function.
精彩评论