2012-01-25 5 views
-1

私はMySQLをVisual Studioで使用していますが、C#で必要なリソースを追加しました。マイコード:Visual StudioでMySQLを使用するC#エラー

MySql.Data.MySqlClientを使用しています。

string MySqlConnectionValues = "SERVER=blahblahblah.000webhost.com; DATABASE=dbdbdbdb;UID=OopsIDon'tRemember; PASSWORD=whatspassword?;"; 
    MySqlConnection MySQLCon; 
    MySqlDataAdapter MySQLDataAdapter; 
    DataTable DTItems; 

      private void MySQLForm_Load(object sender, EventArgs e) 
    { 
     try 
     { 
      MySQLCon = new MySqlConnection(MySqlConnectionValues); 
     } 
     catch (Exception UnableToConnectToMYSQL) 
     { 
      MessageBox.Show(UnableToConnectToMYSQL.Message.ToString()); 
     } 
    } 

    DataTable GetAllItems() 
    { 
     try 
     { 
      string Query = "select * from items"; 

      MySQLDataAdapter = new MySqlDataAdapter(Query, MySQLCon); 
      DataSet DS = new DataSet(); 
      MySQLDataAdapter.Fill(DS); 
      return DS.Tables[0]; 
     } 
     catch (Exception UnableToGetAllItems) 
     { 
      MessageBox.Show(UnableToGetAllItems.Message.ToString()); 
      return null; 
     } 
    } 

しかし、私はUnableToGetAllItems例外でMessageboxは「を指定したMySQLはホストのいずれかに接続できません」取得しています。私は000webhost CPanelのManage MySQLDatabasesページで全く同じホスト名を入力したと確信しています。なぜそれが起こっているのですか?

+0

これはホストされたMySQLボックスのようですか?必要なポートは開いていますか? – Stu

答えて

0

おそらく、接続文字列がdbプロバイダの観点から有効ではない可能性があります。アポストロフィのようなシンボルが含まれているためです。平凡な名前の新しいユーザーを作成し、それが機能するかどうかを確認してください。そうでなければシンボルの代わりに'を使用してそのようなシンボルをスクリーニングする必要があります。

+0

"初期化文字列の形式がインデックス0から始まる仕様に準拠していません。 – BShakiba

+0

この意味は?エラーメッセージまたは何ですか? – Kath

0

ウェブホストでこのようにMySQLデータベースに接続することはできますか?許可されている場合は、接続する正しいポートを知っていますか?デフォルトでは、接続文字列にポートを追加しない場合、ポート3306が使用されます。

関連する問題