Подключение к БД Mysql, получение данных

127
29 декабря 2019, 00:00

Как можно осуществить подключение к базе данных Mysql и осуществить запросы? К примеру в PHP я подключаюсь так

$db_host = "localhost";
$db_user = "root";
$db_password = "";
$db_name = "table";
$mysqli = new mysqli($db_host, $db_user, $db_password, $db_name); 

И потом делаю запрос на получении информации по ID

$query = mysqli_query($mysqli, "SELECT * FROM `users` WHERE `Id` = '"$id"'");
$user = mysqli_fetch_assoc($query);

А потом использую так

$email = $user["Email"];
$name = $user["Name"];

В интернете не могу найти понятное подключение и получение информации, как в PHP.

Answer 1

Для подключения к MySql на C# используйте к примеру библиотеку MySql.Data (MySql Connector/NET).

Пример

Добавьте пространство имен

using MySql.Data.MySqlClient;

Затем создайте строку подключения при помощи класса MySqlConnectionStringBuilder

MySqlConnectionStringBuilder stringBuilder = new MySqlConnectionStringBuilder();
stringBuilder.Server = "localhost";
stringBuilder.UserID = "root";
stringBuilder.Password = "";
stringBuilder.Database = "table";
string connectionString = stringBuilder.ToString();

После чего создайте подключение к MySql.

MySqlConnection connection = new MySqlConnection(connectionString);

Создайте команду и установите SQL запрос.

uint id = 0;
MySqlCommand command = connection.CreateCommand();
command.CommandText = "SELECT * FROM `users` WHERE `id` = @id";
command.Parameters.AddWithValue("@id", id); // Заметьте, можно использовать параметры.

Откройте подключение, вызовите MySqlDataReader и считывайте результат.

connection.Open();
string name = null;
string email = null;
using (MySqlDataReader reader = command.ExecuteReader()) {
    while (reader.Read()) // reader.Read() возвращает true и переходит к следующему ряду.
    {
        name = reader.GetString("Name");
        email = reader.GetString("Email");
    }
}
connection.Close();
READ ALSO
Как правильно остановить чтение файла?

Как правильно остановить чтение файла?

Для упрощения считывания данных из бинарного файла, унаследовал класс BinaryReader, и описал несколько вспомогательных методов:

161
Рисовать пиксель при условии

Рисовать пиксель при условии

В textbox есть строка, состоящая из 1 и 0Код должен читать строку

137
Что это за оператор => в свойстве

Что это за оператор => в свойстве

Что это за оператор => в свойстве

125
Зачем создавать экземпляр интерфейса? [дубликат]

Зачем создавать экземпляр интерфейса? [дубликат]

Зачем создавать экземпляр интерфейса?

124