質問

私はインクルードは、MySQLデータベースを使用してC ++アプリケーションを作成しています。私は、可能な場合には、自身のアカウントを作成したアプリケーションをしたいと思います。私はそうする方法を発見していません。

毎回Iポート私のアプリケーションは、私はセットアップシーケンスを忘れます。現在の設定シーケンスは、使用するアプリケーションのためのMySQLでアカウントを作成する必要があります。アプリケーションは、アカウントと権限を持っていたら、それはデータベースを作成して、テーブルを設定することができます。

また、これは私のエンドユーザーのために少し迷惑だろう。私のアプリケーションは、アプリケーションがセットアップをすべて実行することができれば使用することが容易になるだろう。

例私が最初にアプリケーションを実行する前に、MySQLでは、ユーザーアカウントを作成するために、すべての状態を発見しました。方向は通常、MySQLのコマンドラインアプリケーションを使用してアカウントを作成する方法を教えてください。しかし、私は私のアプリケーションは、MySQLに独自のアカウントを作成します。

私は、Visual Studio 2008、C ++言語、およびMySQLコネクタC ++ 1.0.5を使用しています。プラットフォームは、Windows XPまたはVistaです。コネクターは、JavaのJDBC APIに似たAPIを使用しています。私は、JavaやC ++の例を受け入れるだろう。

ところで、私は、ODBCを使用して問題を抱えていたので、それは問題外です。

感謝します。

役に立ちましたか?

解決

あなたは鶏が先か卵が先かの問題がここにを持っています。あなたは既にサーバーにログインして、あなたのアプリケーションのために別のアカウントを作成するために必要なアカウントの資格情報を持たずにデータベースアカウントを作成することはできません。

ユーザーは、それが「迷惑」であったとしても、インストール/セットアップ時間中に、データベースアカウントの資格情報を提供するために持っているため、

のほかに、それは非常に一般的です。アプリケーションがデータベースに依存している場合、ユーザーはデータベース・サーバと、自分の資格情報のパラメータに対処することが期待されなければならない。

データベースクライアント(JDBC / ODBC)と言語(Javaの/ C ++)は、残念ながら、あなたのジレンマとは無関係です。

あなただけのアプリケーションのための軽量の内部データベースを必要とする場合は、

は、おそらくあなたは SQLiteの組み込みデータベース代わりのMySQLの。それはあなたのアプリケーションデータベースは、ユーザーの設定なしに、自律的に存在することができるようになります。

他のヒント

たぶん代わりに、アプリケーションのアカウントの作成などの、あなたのセットアップに含めることができます。セットアップを実行すると、それはまた、アカウントを作成したり、使用することを説明したプロセスを実行することができます。

これが不満足と思われる場合は、

、おそらくあなたのセットアップ手順の詳細、アカウント作成プロセスをでします。

あなたは、SQLクエリーからすべてを考慮してテーブルを作成して...することができます。

まず、場所を全焼し、新しいユーザー/テーブル/データベースを作成するために必要な特権ではなく、十分な権限を持つデフォルトのアカウントを作成します。

第二に、ユーザはまず、MySQLデータベースにあなたのプログラムのログを終了背中に、あなたのアプリケーションを起動し、ユーザー新しいユーザー/テーブル/データベースを生成するために、MySQLデータベースにSQLクエリを送信するときます。

第三に、あなたのアプリケーションのデフォルトのアカウントからログアウトし、新しく作成したアカウントにます。

あなたはこれに似た何かを行う場合は、潜在的なセキュリティ上の懸念を考慮してください。

scroll top