CURRENT_TIMESTAMP is a system function to retrieve the current system date and time. CURRENT_TIMESTAMP is an ANSI SQL function whereas GETDATE is the T-SQL version of that same function. That says it is a non-deterministic function. If you are very specific to ANSI comaptibility or thinking of heterogenous system support, I would suggest to use CURRRENT_TIMESTAMP instead of GETDATE(). As an envision, I prefer to use CURRENT_TIMESTAMP over GETDATE() personally wherever possible.
Few of Thoughts:
1. When we create a default constaint with CURRENT_TIMESTAMP, by default, SSMS properties are showing GETDATE().
2. Tool tip text of the function adds parenthesis – ()
My thought: I have no clue why Microsoft has made this so.Its more concerned to me the function with “()” gives an error as below.