【发布时间】:2013-08-13 20:19:04
【问题描述】:
我遇到了一些问题 22。我正在使用 FMDB 的花哨withParameterDictionary 方法将数据插入到我的 SQLite 数据库中,如下所示:
NSDictionary *aircraftDict = [NSDictionary dictionaryWithObjectsAndKeys:
self.aircraftIdTextField.text, @"aircraft_id",
self.makeModelTextField.text, @"make_model",
self.categoryClassTextField.text, @"category_class",
@YES, @"updated_flag",
nil];
NSString *addAircraftQuery = @"INSERT INTO aircrafts (aircraft_id, make_model, category_class, updated_flag) VALUES (:aircraft_id, :make_model, :category_class, :updated_flag)";
[db executeUpdate:addAircraftQuery withParameterDictionary:aircraftDict];
问题在于,当其中一个文本字段为空白时,它会截断 NSDictionary,因为 nil 值告诉字典它已到达其值列表的末尾。
我可以通过确保字典中的每个值都有一个空白对象(例如字符串@"")来解决这个问题。
然后我的值作为“空白”值而不是NULL 到达我的 SQLite 数据库。这可能没什么大不了,但我听说使用NULL 会占用更少的数据库空间。
如何在不提前截断我的 NSDictionary 的情况下将NULL 插入我的数据库?
【问题讨论】: