diff --git a/session_convert.go b/session_convert.go index 7f11354d..0c464310 100644 --- a/session_convert.go +++ b/session_convert.go @@ -544,6 +544,9 @@ func (session *Session) value2Interface(col *core.Column, fieldValue reflect.Val return 0, err } if col.SQLType.IsBlob() { + if data == nil { + return nil, nil + } return data, nil } return string(data), nil @@ -556,6 +559,9 @@ func (session *Session) value2Interface(col *core.Column, fieldValue reflect.Val return 0, err } if col.SQLType.IsBlob() { + if data == nil { + return nil, nil + } return data, nil } return string(data), nil diff --git a/statement.go b/statement.go index 67e35213..c7ed1834 100644 --- a/statement.go +++ b/statement.go @@ -319,7 +319,9 @@ func (statement *Statement) buildUpdates(bean interface{}, if err != nil { engine.logger.Error(err) } else { - val = data + if data != nil { + val = data + } } goto APPEND } @@ -330,7 +332,9 @@ func (statement *Statement) buildUpdates(bean interface{}, if err != nil { engine.logger.Error(err) } else { - val = data + if data != nil { + val = data + } } goto APPEND }