On Aug 24, 2011, at 1:24 PM, Alexander Reichstadt wrote: > Actually it's a couple of wrapper-classes to MYSQL c-calls by Karl Kraft. > > In the sqlfetch-class, eventually it arrives at.... > > mysql_stmt_prepare(myStatement, [s UTF8String],[s length]) > > where s is the NSString instance containing the SELECT-statement, such as > SELECT field="someÜberthing". > > From there it goes on to.... > > int STDCALL mysql_stmt_prepare(MYSQL_STMT *stmt, const char *query, > unsigned long length); > > ....and at this point it fails.
First, [s length] is the wrong value to pass as the length of [s UTF8String]. Try this instead: const char *cstr = [s UTF8String]; mysql_stmt_prepare(myStatement, cstr, strlen(cstr)); Second, this code is sending UTF-8 encoded character data to MySQL. Make sure that your MySQL environment is configured to accept UTF-8 data. http://rentzsch.tumblr.com/post/9133498042/howto-use-utf-8-throughout-your-web-stack If your MySQL system instead expects some other encoding like ISO Latin-1, you can tell NSString to output that instead. [myString cStringUsingEncoding:NSISOLatin1StringEncoding]; -- Greg Parker gpar...@apple.com Runtime Wrangler _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com