OHMySQL icon indicating copy to clipboard operation
OHMySQL copied to clipboard

INSERT with NSNull.null inserts a zero into an optional Int field rather than NULL

Open EricShapiro opened this issue 6 years ago • 1 comments

What did you do?

Issued an INSERT with an NSNull.null value for an INT field.

What happened instead?

A zero value was inserted into the INT field rather than NULL. Note that the field allows for NULL values.

What did you expect?

I expected the field to contain NULL (no value).

OHMySQL Environment

  • OHMySQL version: 2.1.3 (March 2018)
  • Xcode version: 9.2
  • Swift version: (if applicable, if not remove)
  • Platform(s) running OHMySQL: OSX 10.13.3

Demo Project

Don't have a demo project yet. The INSERT code is pretty simple:

NSDictionary<NSString*, id> *d = [NSDictionary dictionaryWithObjectsAndKeys: "Bob", @"user", [NSDate date], @"modified", NSNull.null, @"rec_no", nil];

OHMySQLQueryRequest *request = [OHMySQLQueryRequestFactory INSERT:@"Log" set:d];

and then passed the request to an OHMySQLQueryContext.

EricShapiro avatar May 03 '18 23:05 EricShapiro

Thanks for good report.

oleghnidets avatar May 04 '18 06:05 oleghnidets