この記事では、MySQLサポートをMicrosoftVisualStudioに追加する方法について説明します。 MySQLとVisualStudioの統合により、A2ホスティングサーバー上のMySQLデータベースにアクセスするMicrosoft.NETアプリケーションを開発できます。
VisualStudioへのMySQLサポートの追加
Visual Studioには、デフォルトでMySQLのサポートは含まれていません。 MySQLサポートをVisualStudioに追加するには、次のコンポーネントをインストールする必要があります。
- MySQL for Visual Studio: このコンポーネントは、サーバーエクスプローラーなどのVisualStudioのビジュアルデータベースツールにMySQLサポートを追加します。 MySQL for Visual Studioをダウンロードするには、http://dev.mysql.com/downloads/windows/visualstudioにアクセスしてください。
- コネクタ/ネット: このコンポーネントは、MySQL用の.NETドライバーをVisualStudioに追加します。 MySQLデータベースにアクセスする.NETコードを記述したい場合は、このコンポーネントをインストールする必要があります。 Connector / Netをダウンロードするには、https://dev.mysql.com/downloads/connector/netにアクセスしてください。
Visual Studioとの可能な限り最高のMySQL統合を実現するには、これらのコンポーネントの両方をダウンロードしてインストールする必要があります。
リモートコンピュータからMySQLデータベースにアクセスするには、リモートアクセスが許可されているIPアドレスのリストにIPアドレスを追加する必要があります。これを行う方法については、この記事を参照してください。 IPアドレスを追加しないと、アクセスが拒否されましたを受け取ります。 MySQLデータベースにリモートでアクセスしようとすると、メッセージが表示されます。次の手順は、Visual Studio 2015(Community Edition)を使用して開発およびテストされました。他のVisualStudioバージョンの正確な手順またはユーザーインターフェイスラベルは、若干異なる場合があります。MySQL for Visual Studioコンポーネントをインストールした後、Visual Studioのビジュアルデータベースツールを使用して、A2ホスティングサーバー上のMySQLデータベースにアクセスして表示できます。
次の手順は、サーバーエクスプローラーを使用してA2ホスティングアカウントのMySQLデータベースを表示する方法を示しています。
次の手順を実行する前に、MySQLデータベースとユーザーがアカウントにすでに存在している必要があります。 cPanelを使用してMySQLデータベースを管理する方法については、この記事を参照してください。- VisualStudioを起動します。
- [表示]メニューで、[サーバーエクスプローラー]をクリックします。
- [データベースに接続]アイコンをクリックします。 [データソースの選択]ダイアログボックスが表示されます。
- [データソース]リストボックスで、[MySQLデータベース]を選択し、[続行]をクリックします。[MySQLデータベース]オプションが表示されない場合は、MySQL forVisualStudioコンポーネントがインストールされていないかVisualStudioに正しく登録されていない可能性があります。 MySQL forVisualStudioコンポーネントを再インストールしてみてください。
- [サーバー名]テキストボックスに、アカウントのA2ホスティングサーバーの名前を入力します。アカウントのサーバー名を確認する方法については、こちらの記事をご覧ください。
- [ユーザー名]テキストボックスに、データベースユーザーの名前を入力します。
- [パスワード]テキストボックスに、手順6で指定したデータベースユーザーのパスワードを入力します。VisualStudioがデータベースに接続するたびにパスワードを再入力しない場合は、[パスワードを保存する]チェックボックスをオンにします。
- [データベース名]テキストボックスに、アクセスするデータベースの名前を入力します。
- [接続のテスト]をクリックします。接続のテストに成功したというメッセージが表示されます。そうでない場合は、手順5〜8で指定した値を確認してから、再試行してください。
- [OK]をクリックします。サーバーエクスプローラーは、サーバーとデータベースを使用可能な接続のリストに追加します。
- サーバーとデータベース名をダブルクリックして、次の項目を表示します。
- テーブル
- ビュー
- ストアドプロシージャ
- 保存された関数
- UDF(ユーザー定義関数)
これらのアイテムのいずれかをダブルクリックして、データベース内を移動できます。たとえば、データベースで定義されているテーブルを表示するには、[テーブル]をダブルクリックします。テーブルに保存されている実際のデータを表示するには、テーブル名を右クリックして、[データの取得]をクリックします。
.NETを使用したMySQLへの接続
Connector / Netコンポーネントをインストールした後、MySQLデータベースにアクセスする.NETコードを記述できます。これを行うには、プロジェクトにMySQL .NETライブラリへの参照を追加し、データベース接続文字列に正しいパラメータを指定する必要があります。
次の手順は、リモートMySQLデータベースに接続してSQLクエリを実行する単純なC#またはVisualBasicコンソールアプリケーションを作成する方法を示しています。
次の手順を実行する前に、MySQLデータベースとユーザーがアカウントにすでに存在している必要があります。 cPanelを使用してMySQLデータベースを管理する方法については、この記事を参照してください。- VisualStudioを起動します。
- [ファイル]メニューで、[新規]をクリックし、[プロジェクト]をクリックします。 [新しいプロジェクト]ダイアログボックスが表示されます。
- [テンプレート]で、希望するコーディング言語を選択します。
- C#を使用するには、Visual C#を選択します。
- VB.NETを使用するには、VisualBasicを選択します。
- テンプレートのリストで、[コンソールアプリケーション]をクリックします。
- [名前]テキストボックスに、MySQL_testと入力します。
- [OK]をクリックします。 VisualStudioがプロジェクトを作成します。
- コードウィンドウで、既存のコードをすべて削除します。
-
手順3で選択した言語の次のコードをコピーして、コードウィンドウに貼り付けます。 connstringを変更します 独自のデータベースのログイン情報を使用するための定義。さらに、 table_nameの3つのインスタンスを置き換えます クエリするテーブルの名前を使用します。
Visual C#:
using System; using System.Data; using MySql.Data.MySqlClient; namespace MySQL_test { class Program { static void Main(string[] args) { string connstring = @"server=example.com;userid=example_user;password=example_password;database=example_database"; MySqlConnection conn = null; try { conn = new MySqlConnection(connstring); conn.Open(); string query = "SELECT * FROM table_name;"; MySqlDataAdapter da = new MySqlDataAdapter(query, conn); DataSet ds = new DataSet(); da.Fill(ds, "table_name"); DataTable dt = ds.Tables["table_name"]; foreach (DataRow row in dt.Rows) { foreach (DataColumn col in dt.Columns) { Console.Write(row[col] + "\t"); } Console.Write("\n"); } } catch (Exception e) { Console.WriteLine("Error: {0}", e.ToString()); } finally { if (conn != null) { conn.Close(); } } } } }
ビジュアルベーシック:
Imports System Imports System.Data Imports MySql.Data.MySqlClient Module Module1 Sub Main() Dim connstring As String = "server=example.com;userid=example_user;password=example_password;database=example_database" Dim conn As MySqlConnection = Nothing Try conn = New MySqlConnection(connstring) conn.Open() Dim query As String = "SELECT * FROM table_name;" Dim da As New MySqlDataAdapter(query, conn) Dim ds As New DataSet() da.Fill(ds, "table_name") Dim dt As DataTable = ds.Tables("table_name") For Each row As DataRow In dt.Rows For Each col As DataColumn In dt.Columns Console.Write(row(col).ToString() + vbTab) Next Console.Write(vbNewLine) Next Catch e As Exception Console.WriteLine("Error: {0}", e.ToString()) Finally If conn IsNot Nothing Then conn.Close() End If End Try End Sub End Module
- [プロジェクト]メニューで、[参照の追加]をクリックします。 ReferenceManagerダイアログボックスが表示されます。
- [アセンブリ]で、[拡張機能]をクリックします。
-
アセンブリのリストを下にスクロールして、MySql.Dataをダブルクリックします。アセンブリ名の横にチェックボックスが表示されます。
MySql.Dataが表示されない場合 アセンブリがリストされている場合、Connector/NetコンポーネントがVisualStudioに正しくインストールまたは登録されていない可能性があります。 Connector/Netコンポーネントを再インストールしてみてください。
- [OK]をクリックします。
- [ビルド]メニューで、[ソリューションのビルド]をクリックします。 VisualStudioはアプリケーションをコンパイルします。
- [デバッグ]メニューで、[デバッグなしで開始]をクリックします。アプリケーションが実行され、選択したテーブルのすべてのデータが印刷されます。
Microsoft Visual Studioの詳細については、https://www.visualstudio.com/en-us/visual-studio-homepage-vs.aspxにアクセスしてください。