I have a program that gets cookies. One param of this cookie is an NSNumber. So I save it to database as
sqlite3_bind_int(addStmt, 2, HEREisNSNUMBER);
Saving this value as:
cookieObj.created = [paramsDictionary valueForKey:@"Created"];
then I create and object of class, and get this parameter into NSNumber; after that, I have a wrong value. For example: In cookie I have a 329822675
after saving this changes to 79931776
. How can I correctly save that number?
请试试
sqlite3_bind_int(addStmt, 2, [HEREisNSNUMBER intValue]);
You are trying to get the int-value of an NSNumber. That's where it goes wrong.
Use this instead: sqlite3_bind_int (addStmt, 2, [HEREisNSNUMBER intValue]);
`
NSNumber is a reference type. You should not assign it as a int value directly. You should get the intValue
of NSNumber and bind it to sqlite3 statement.
sqlite3_bind_int(addStmt, 2, [HEREisNSNUMBER intValue]);
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.