Não há API Objective-C fornecida pela Apple para MySQL. Existem alguns wrappers de terceiros da API C, no entanto. Dê uma olhada no MySQL-Cocoa Framework , por exemplo.
Dada a sua familiaridade com a API PHP e C, pode ser mais simples para você simplesmente usar a API C. Você precisará lidar com a conversão entre objetos e tipos de dados C, mas isso não dá muito trabalho.
Editar
Você está travando porque o valor da linha retornado pela API mysql não é um objeto e sua string de formato está informando
NSLog
para tratá-lo como um. O %@
é um espaço reservado de string de formato para um objeto, não um tipo de dados C. Não está claro qual é o valor neste caso. O contexto parece implicar que são dados de imagem. Se for esse o caso, você provavelmente desejará criar um
NSData
objeto do blob retornado pela consulta, por exemplo:NSData *imageData;
imageData = [[ NSData alloc ] initWithBytes: row[ i ] length: lengths[ i ]];
NSLog( @"imageData: %@", imageData );
/* ...create NSImage, CGImage, etc... */
[ imageData release ];
Se seus campos de resultado forem apenas strings, use
NSString
's -initWithBytes:length:encoding:
método:NSString *s;
s = [[ NSString alloc ] initWithBytes: row[ i ] length: lengths[ i ]
encoding: NSUTF8StringEncoding ];
NSLog( @"result column %d: %@", i, s );
[ s release ];