Iphone 使用自己的示例代码时出现数据库错误!
我刚刚添加了用于在项目中使用SQLite的数据库。我创建了一个带有表“posts”的示例数据库,并将其添加到项目中。然而,在执行他们自己的示例中的以下行时,我得到了一个错误:函数'executeQuery'的参数太多Iphone 使用自己的示例代码时出现数据库错误!,iphone,objective-c,debugging,sqlite,Iphone,Objective C,Debugging,Sqlite,我刚刚添加了用于在项目中使用SQLite的数据库。我创建了一个带有表“posts”的示例数据库,并将其添加到项目中。然而,在执行他们自己的示例中的以下行时,我得到了一个错误:函数'executeQuery'的参数太多 EGODatabaseResult* result = [database executeQuery:@"SELECT * FROM `posts` WHERE `post_user_id` = ?", [NSNumber numberWithInt:10]]; 我是不是漏掉了什
EGODatabaseResult* result = [database executeQuery:@"SELECT * FROM `posts` WHERE `post_user_id` = ?", [NSNumber numberWithInt:10]];
我是不是漏掉了什么?我不知道,但如果我不得不猜测的话,我会试试看
EGODatabaseResult* result = [database executeQuery:[NSString stringWithFormat:@"SELECT * FROM `posts` WHERE `post_user_id` = %d", 10]];
从EgoDatabase.h:
// Execute Query
- (EGODatabaseResult*)executeQueryWithParameters:(NSString*)sql, ... NS_REQUIRES_NIL_TERMINATION;
- (EGODatabaseResult*)executeQuery:(NSString*)sql;
- (EGODatabaseResult*)executeQuery:(NSString*)sql parameters:(NSArray*)parameters;
我不知道,但如果要我猜的话,我会试试
EGODatabaseResult* result = [database executeQuery:[NSString stringWithFormat:@"SELECT * FROM `posts` WHERE `post_user_id` = %d", 10]];
从EgoDatabase.h:
// Execute Query
- (EGODatabaseResult*)executeQueryWithParameters:(NSString*)sql, ... NS_REQUIRES_NIL_TERMINATION;
- (EGODatabaseResult*)executeQuery:(NSString*)sql;
- (EGODatabaseResult*)executeQuery:(NSString*)sql parameters:(NSArray*)parameters;
有两件事我看错了。首先,您说您的表名为“post”,但您试图查询“posts”。其次,查询字符串的格式不正确。假设您修复了第一个错误,请尝试使用以下方法:
NSString *queryString = [NSString stringWithFormat:@"SELECT * FROM `post` WHERE `post_user_id` = %d", 10];
EGODatabaseResult* result = [database executeQuery:queryString];
这应该可以解决这两个问题。我认为有两件事不对。首先,您说您的表名为“post”,但您试图查询“posts”。其次,查询字符串的格式不正确。假设您修复了第一个错误,请尝试使用以下方法:
NSString *queryString = [NSString stringWithFormat:@"SELECT * FROM `post` WHERE `post_user_id` = %d", 10];
EGODatabaseResult* result = [database executeQuery:queryString];
这应该可以解决这两个问题