diff --git a/src/NHibernate.Test/NHibernate.Test.csproj b/src/NHibernate.Test/NHibernate.Test.csproj
index 847687acb9..ab4ca913e8 100644
--- a/src/NHibernate.Test/NHibernate.Test.csproj
+++ b/src/NHibernate.Test/NHibernate.Test.csproj
@@ -77,7 +77,7 @@
-
+
@@ -86,7 +86,7 @@
compile
-
+
diff --git a/src/NHibernate/Dialect/Oracle9iDialect.cs b/src/NHibernate/Dialect/Oracle9iDialect.cs
index b36b1a34b3..8611c20477 100644
--- a/src/NHibernate/Dialect/Oracle9iDialect.cs
+++ b/src/NHibernate/Dialect/Oracle9iDialect.cs
@@ -7,19 +7,10 @@ namespace NHibernate.Dialect
{
public class Oracle9iDialect : Oracle8iDialect
{
- public override string CurrentTimestampSelectString
- {
- get { return "select systimestamp from dual"; }
- }
+ public override string CurrentTimestampSelectString =>
+ $"select {CurrentTimestampSQLFunctionName} from dual";
- public override string CurrentTimestampSQLFunctionName
- {
- get
- {
- // the standard SQL function name is current_timestamp...
- return "current_timestamp";
- }
- }
+ public override string CurrentTimestampSQLFunctionName => "localtimestamp";
// Current_timestamp is a timestamp with time zone, so it can always be converted back to UTC.
///
@@ -46,6 +37,9 @@ protected override void RegisterFunctions()
{
base.RegisterFunctions();
+ RegisterFunction(
+ "current_timestamp",
+ new NoArgSQLFunction("localtimestamp", NHibernateUtil.LocalDateTime, false));
RegisterFunction(
"current_utctimestamp",
new SQLFunctionTemplate(NHibernateUtil.UtcDateTime, "SYS_EXTRACT_UTC(current_timestamp)"));