Se connecter à MySQL directement à partir de l'app iPad (et non via PHP, etc.)

Avant que quelqu'un ait une chance: Oui, je sais que c'est une mauvaise idée. S'il vous plaît, ne pas me donner une conférence sur la manière dont je devrais utiliser un service web à la place. Merci.

Alors, comment cela pourrait-il être fait?

J'ai trouvé ce bit http://www.karlkraft.com/index.php/2010/09/17/mysql-for-iphone-and-osx/ et pensé qu'il pourrait faire l'affaire. J'ai eu un tas d'ARC messages d'erreur, nettoyé et eu cette erreur à l'exécution:

Détecté une tentative d'appeler un symbole dans le système de bibliothèques qui n'est pas
présent sur l'iPhone: pthread_cond_init$UNIX2003 appelé à partir de la fonction
my_thread_init dans l'image que dans le sgd.

Ai-je besoin d'utiliser quelque chose comme ODBC/C?

Je sais que la solution pourrait être un long, c'est très bien. Ce serait génial si quelqu'un pouvait au moins me diriger dans la bonne direction.

EDIT:

Puisque les gens sont désireux de savoir la raison pour choisissant de ne pas utiliser un service web, c'est ici:

Si vous êtes à la création en interne d'une application, l'ajout de la sécurité des services web est à côté de rien. Travaillant directement avec le DB signifie que je dois maintenir moins de code. En Plus je n'ai pas besoin de créer hacky scripts PHP pour faire des choses.

CONCLUSION FINALE:

Je voulais laisser un message pour les personnes qui êtes sur le point de faire la même chose: Ne pas 🙂
Essentiellement, vos options sont hacky scripts côté serveur ou Oracle propriétaires client mysql que vous avez construit vous-même (et donc un hacky solution). Votre choix mais je vous conseille fortement contre elle.

Dites-moi pourquoi vous êtes en train de le faire ou je vais vous donner un cours sur la façon dont vous devriez utiliser un service web à la place.
Je recommande aussi à l'aide de soap au lieu de permettre la connexion mysql via TCP.
Ce n'est pas à moi de le sermonner, parce que je suis en supposant que vous avez une bonne raison, après avoir admis qu'il pourrait dire aussi du travail supplémentaire pour vous. Je suis juste curieux - pourquoi le refus d'écrire un script web avec une poignée de coutume Api? Si vous avez une base de données MySQL, je suis en supposant que vous êtes en train de payer pour l'hébergement web, non?
Parler de piquer le nid de guêpes 😉 Ok: Si vous êtes en train de créer une maison de l'app, l'ajout de la sécurité des services web est à côté de rien. Travaillant directement avec le DB signifie que je dois maintenir moins de code. En Plus je n'ai pas besoin de créer hacky scripts PHP pour faire des choses.
Le pthread_cond_init$UNIX2003 fonction n'est pas disponible sur iOS, mais vous avez appelé et les faibles, elle est reliée. Réécrire votre filetage code.

OriginalL'auteur JHollanti | 2012-02-05