Я довольно новичок в разработке для iPhone.
Я создал одну функцию для вставки данных в базу данных. Код успешно компилируется. Но когда доходит до утверждения
sqlite3_bind_text (sqlStatement, 1, [s UTF8String], -1, SQLITE_TRANSIENT);
он ничего не делает, но зависает и в предупреждении говорит "передача аргумента 1" sqlite3_bind_text "из несовместимого типа указателя" "для всех операторов красного цвета
Тот же код, который я использую для извлечения данных из базы данных и его работы на другом viewController.
Ниже в коде. Это довольно просто.
Пожалуйста, помогите, ребята.
-(void) SaveData: (NSString *)FirstName: (NSString *)LastName: (NSString *)State: (NSString *)Street: (NSString *)PostCode
{
databaseName = @"Zen.sqlite";
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDire ctory, NSUserDomainMask,YES);
NSString *documentsDir=[documentPaths objectAtIndex:0];
databasePath=[documentsDir stringByAppendingPathComponent:databaseName];
sqlite3 *database;
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK)
{
const char *sqlStatement = "insert into customers (FirstName, LastName, State, Street, PostCode) values(?, ?, ?, ?, ?)";
sqlite3_stmt *compiledStatement;
sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL);
sqlite3_bind_text(sqlStatement, 1, [FirstName UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(sqlStatement,2,[LastName UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_bind_text(sqlStatement,3,[State UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_bind_text(sqlStatement,4,[Street UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_bind_text(sqlStatement,5,[PostCode UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_step(sqlStatement);
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
}