Question

Je crée une application C ++ l'utilise une base de données MySQL. Je voudrais l'application pour créer un compte pour lui-même, si possible. Je ne l'ai pas trouvé une méthode pour le faire.

Chaque fois que je le port ma demande, j'oublie la séquence mis en place. La séquence en cours nécessite la création d'un compte MySQL pour l'application à utiliser. Une fois que l'application a un compte et privilèges, il peut créer la base de données et mettre en place les tables.

En outre, ce serait un peu gênant pour mes utilisateurs finaux. Ma demande serait plus facile à utiliser si l'application peut effectuer toutes la mise en place.

Les exemples que j'ai trouvé tout état de créer un compte d'utilisateur dans MySQL avant d'exécuter l'application. Les directions indiquent généralement comment créer le compte en utilisant l'application ligne de commande MySQL. Mais je veux que ma demande de créer son propre compte dans MySQL.

J'utilise Visual Studio 2008, langage C ++ et le connecteur MySQL C ++ 1.0.5. La plate-forme est Windows XP ou Vista. Le connecteur utilise l'API similaire à l'API Java JDBC. J'accepte des exemples en Java ou C ++.

BTW, j'avais des problèmes en utilisant ODBC, il est donc hors de question.

Merci.

Était-ce utile?

La solution

Vous avez un ou le problème de l'œuf ici. Vous ne pouvez pas créer un compte de base de données sans avoir déjà les informations d'identification de compte nécessaire pour se connecter au serveur et créer un autre compte pour votre application.

Par ailleurs, il est très courant que les utilisateurs doivent fournir des informations de compte de base de données lors de l'installation / temps d'installation, même si elle est « ennuyeux ». Si votre application repose sur une base de données, les utilisateurs doivent s'attendre d'avoir à traiter avec le serveur de base de données et les paramètres d'informations d'identification sur leur propre.

Le client de base de données (JDBC / ODBC) et le langage (Java / C ++) est hors de propos à votre dilemme, malheureusement.

Si vous avez seulement besoin d'une base de données interne légère pour votre application, peut-être vous devriez regarder dans le SQLite base de données intégrée au lieu de MySQL. Cela permettra à votre base de données de l'application d'exister de façon autonome, sans aucune configuration utilisateur.

Autres conseils

Peut-être au lieu d'inclure la création de compte dans votre application, vous pouvez l'inclure dans votre configuration. À mesure que votre configuration fonctionne, il pourrait également exécuter le processus décrit pour créer ou utiliser un compte.

Si cela ne semble pas satisfaisante, peut-être vos instructions d'installation pourrait détailler le processus de création de compte.

Vous pouvez créer le compte et les tables et ... tout à partir d'une requête SQL.

Tout d'abord, faire un compte par défaut qui a des privilèges suffisants pour créer un nouvel utilisateur / table / base de données, mais pas assez de privilèges pour incendier l'endroit.

En second lieu, lorsqu'un utilisateur lance l'application, à l'arrière mettre fin à vos journaux de programme dans la base de données MySQL, et envoie une requête SQL à la base de données MySQL pour générer l'utilisateur un nouvel utilisateur / table / base de données.

Troisièmement, vos journaux d'application sur le compte par défaut, et dans le compte nouvellement créé.

Si vous faites quelque chose de semblable à cela, assurez-vous de tenir compte des préoccupations de sécurité possibles.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top