From d3926afde61e5c22d05e6a19bc1776610b403393 Mon Sep 17 00:00:00 2001 From: CyJaySong Date: Sat, 28 Oct 2023 16:09:58 +0800 Subject: [PATCH] Fix code --- dialects/time.go | 5 ++++- internal/statements/statement.go | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/dialects/time.go b/dialects/time.go index d4295b44..4a6beb77 100644 --- a/dialects/time.go +++ b/dialects/time.go @@ -18,9 +18,12 @@ func FormatColumnTime(dialect Dialect, dbLocation *time.Location, col *schemas.C if col.Nullable { return nil, nil } - if col.SQLType.IsNumeric() || col.SQLType.Name == schemas.TimeStamp || col.SQLType.Name == schemas.TimeStampz { + if col.SQLType.IsNumeric() { return 0, nil } + if col.SQLType.Name == schemas.TimeStamp || col.SQLType.Name == schemas.TimeStampz { + t = time.Unix(0, 0) + } } tmZone := dbLocation diff --git a/internal/statements/statement.go b/internal/statements/statement.go index 713b858f..795ef997 100644 --- a/internal/statements/statement.go +++ b/internal/statements/statement.go @@ -704,8 +704,10 @@ func (statement *Statement) CondDeleted(col *schemas.Column) builder.Cond { colName = statement.quote(prefix) + "." + statement.quote(col.Name) } cond := builder.NewCond() - if col.SQLType.IsNumeric() || col.SQLType.Name == schemas.TimeStamp || col.SQLType.Name == schemas.TimeStampz { + if col.SQLType.IsNumeric() { cond = builder.Eq{colName: 0} + } else if col.SQLType.Name == schemas.TimeStamp || col.SQLType.Name == schemas.TimeStampz { + cond = builder.Eq{colName: time.Unix(0, 0).In(statement.defaultTimeZone).Format("2006-01-02 15:04:05.999999999")} } else { cond = builder.Eq{colName: utils.ZeroTime1} }