我使用以下查询向我的一个数据库表中新添加了一列。
alter table 'user' add column 'IsMarried' BOOL default 'false';
数据库更新完成后,用户“jhon”在数据库中的 IsMarried 状态为“真”。
然后我使用Objective C编写了一个sql查询来检索jhon的已婚状态,如下所示。
BOOL married = [results boolForColumn:@"IsMarried"];
我的问题是 bool 变量“已婚”总是返回假;
然后我在代码中添加以下行以检查是否正确
NSString *strMarried = [results stringForColumn:@"IsPwdProtected"];
然后 strMarried 为 jhon 返回“真”。有人可以告诉我如何使用检索 bool 值
boolForColumn 方法
最佳答案
SQLite 不支持 BOOL,您必须坚持使用整数(0 和 1)分别表示 false 和 true。更多信息在这里:
Is there a boolean literal in SQLite?
我目前不在 Mac 前,所以我无法对此进行测试,但我想以下内容会让你得到你想要的:
alter table 'user' add column 'IsMarried' INTEGER default 0;
如果您随后将用户“jhon”更新为已婚状态为 1,我怀疑您调用
boolForColumn
将返回真。
关于iphone - 访问 bool 值表单 Sqlite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16462695/