Подключитесь к MySQL из блока приложений данных Microsoft.

StackOverflow https://stackoverflow.com/questions/403018

Вопрос

Я использую блок приложения данных для большей части доступа к данным, в частности, использую класс SqlHelper для вызова методов ExecuteReader, ExecuteNonQuery и подобных.Передача строки подключения при каждом вызове базы данных.

Как я могу изменить это, чтобы включить подключение к базе данных MySQL.

Это было полезно?

Решение

Если у вас установлена ​​корпоративная библиотека и вы уже знаете, как подключаться к базам данных SQL Server, подключиться к базам данных MySQL не составит труда.

Один из способов сделать это — использовать ODBC.Вот что я сделал:

  1. Перейдите на MySQL.com и загрузите последнюю версию соединителя MySQL ODBC.На момент написания статьи это 5.1.5.Я использовал 64-битную версию, так как у меня 64-битная Vista.
  2. Установите соединитель ODBC.Я решил использовать версию без установщика.Я просто разархивировал его и запустил Install.bat в командной строке администратора.Версия MSI, вероятно, работает нормально, но я сделал это еще тогда, когда устанавливал разъем 3.51.
  3. Проверьте установку, открыв панель управления ODBC и проверив вкладку «Драйверы».Там вы должны увидеть драйвер MySQL ODBC 5.1.Кажется, он даже мирно сосуществует со старой версией 3.51, если она у вас уже есть.Кроме того, он мирно сосуществует с соединителем .NET, если он тоже установлен.
  4. На этом этапе вы будете делать то же самое, что и для подключения к базе данных SQL Server.Все, что вам нужно знать, это то, что использовать в качестве строки подключения.
  5. Вот как выглядит мой:
  6. Конечно, вы можете установить «имя» по своему усмотрению.
  7. Если это ваша единственная база данных, вы можете настроить ее как базу данных по умолчанию следующим образом:
  8. Получите доступ к своим данным в коде, как всегда!Вот простой текстовый пример sql:
    public List<Contact> Contact_SelectAll()
    {
        List<Contact> contactList = new List<Contact>();
        Database db = DatabaseFactory.CreateDatabase("MySqlDatabaseTest");
        DbCommand dbCommand = db.GetSqlStringCommand("select * from Contact");
        using (IDataReader dataReader = db.ExecuteReader(dbCommand))
        {
            while (dataReader.Read())
            {
                Contact contact = new Contact();
                contact.ID = (int) dataReader["ContactID"];
                client.FirstName = dataReader["ContactFName"].ToString();
                client.LastName = dataReader["ContactLName"].ToString();
                clientList.Add(client);
            }
        }

        return clientList;
    }

Другой способ сделать это — создать и использовать поставщика MySql. Этот парень сделал это.Я узнал, как это сделать, адаптируя эти инструкции для подключения к Access.О, и вот еще несколько примеров строк подключения MySql..

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top