"Невозможно подключиться к любому из указанных хостов MySQL."в проектах Smart Device VS2008 - PullRequest
0 голосов
/ 23 января 2012

Я новичок в проектах смарт-устройств. Я установил MySQL Connector Net 6.4.4. И я добавляю MySql.Data.CF для подключения MySQL в 2008 году.

Но я не могу получить вывод. "Невозможно подключиться к любому из указанных хостов MySQL." исключение через connection.open ().

server=192.168.1.100;User Id=mcubic;Persist Security Info=True;database=mcubic

это рабочая строка подключения. Таким образом, идентификатор пользователя сервера базы данных, пароль верны. Нет проблем в этом. Но я не могу понять, почему это происходит из-за ошибки только в проектах Smart Device.

Код, указанный ниже.

try
 {
    string connectionString = "server=192.168.1.100;User Id=mcubic;Persist Security Info=True;database=mcubic";
    string query = "select b.Outlet_Master_Name from mcs_user_outlet a,outlet_master b where a.Mcs_User_Outlet_User_Id=3 and a.Mcs_User_Outlet_Outlet_Id = b.Outlet_Master_Id";
    MySqlConnection connection = new MySqlConnection(connectionString);
    MySqlCommand command = new MySqlCommand(query, connection);
    connection.Open();
    MySqlDataReader Reader = command.ExecuteReader();
    while (Reader.Read())
    {
        comboBox1.Items.Add(Reader[0].ToString());
    }
    connection.Close();
 }
catch(Exception ex)
{
     MessageBox.Show(""+ex.Message);
}

Помогите мне выяснить ошибку.

Я пробовал ниже Строки подключения.

server=192.168.1.100;UID=mcubic;Persist Security Info=True;database=mcubic

server=192.168.1.100;User Id=mcubic;Persist Security Info=False;database=mcubic

server=192.168.1.100;User Id=mcubic;Persist Security Info=False;Initial Catalog=mcubic;

server=192.168.1.100;UID=mcubic;Persist Security Info=True;database=mcubic;pooling = false;

но бесполезно.

Ответы [ 2 ]

2 голосов
/ 25 января 2012

Я решаю свою проблему. Надеюсь, это вам тоже поможет. Код ниже работает отлично для меня.

    DataSet ds = new DataSet();
    MySqlConnection conn = new MySqlConnection("server=server-ip;database=db-name;Character Set=utf8;Uid=user-name;password=****;");
    MySqlCommand cmd = new MySqlCommand("select * from table-name", conn);
    MySqlDataAdapter da = new MySqlDataAdapter();
    conn.Open();
    da.SelectCommand = cmd;
    da.Fill(ds);
    dataGridView1.DataSource = ds.Tables[0];
    conn.Dispose();
    cmd.Dispose();
0 голосов
/ 24 января 2012

Я думаю, что ваша проблема может быть связана с тем, как интеллектуальные устройства подключаются к внешним сетям. Я так понимаю, вы пытаетесь запустить это из Visual Studio с помощью эмулятора.

Я понимаю, что вам нужно подключиться к внешней сети, в которой находится ваш сервер MySql, прежде чем пытаться подключиться к самому серверу.

Здесь есть статья , которая освещает вашу проблему, но с SQL Server. Я уверен, что это покроет ту же проблему, что и вы.

...