diff --git a/statement.go b/statement.go index c7d881f4..baf4d9b0 100644 --- a/statement.go +++ b/statement.go @@ -599,7 +599,9 @@ func buildConditions(engine *Engine, table *core.Table, bean interface{}, if table, ok := engine.Tables[fieldValue.Type()]; ok { if len(table.PrimaryKeys) == 1 { pkField := reflect.Indirect(fieldValue).FieldByName(table.PKColumns()[0].FieldName) - if pkField.Int() != 0 { + // fix non-int pk issues + //if pkField.Int() != 0 { + if pkField.IsValid() { val = pkField.Interface() } else { continue