C#에서 MySQL, MariaDB 데이터베이스 연결해서 사용하는 방법


데이터베이스로 가장 유명한 것은 MS-SQL과 ORACLE이 아닐까 생각합니다.
안정성을 고려하여 기업에서 가장 많이 사용하는 데이터베이스도 아마 이 두 가지일 것입니다.
하지만 이 두 가지 데이터베이스를 사용하기 위해서는 꽤 많은 라이선스 비용을 지불해야 합니다.

그래서 인지 점점 MySQL과 MariaDB의 사용이 늘어나고 있는 추세입니다.

이번 글에서는 C# 프로그램에서 MySQL 데이터베이스나 MariaDB 데이터베이스 연결해서 사용하는 방법에 대해 알아보겠습니다.

참고로 MySQL과 MariaDB는 동일한 .NET Connector를 사용합니다.

C#에서 MySQL, MariaDB 연결을 위해 MySQL.Data 패키지를 프로젝트에 추가하는 방법

1. Visual Studio 메뉴에서 보기 > 다른 창 > 패키지 관리자 콘솔을 차례대로 선택합니다.

C#에서 MySQL, MariaDB 연결을 위해 MySQL.Data 패키지를 프로젝트에 추가하는 방법 1

2. 패키지 관리자 콘솔에서 Install-Package MySql.Data 를 입력해서 패키지를 참조에 추가 합니다.

C#에서 MySQL, MariaDB 연결을 위해 MySQL.Data 패키지를 프로젝트에 추가하는 방법 2

.NET Connector 를 직접 다운 받아 참조에 추가하는 방법

MySQL이나 MariaDB를 프로그램에서 사용하기 위해 각각의 개발 환경에 맞는 Connector가 필요합니다.
MariaDB는 MySql Connector를 그대로 사용하면 됩니다.

MySQL용 .NET Connector를 다운 받기 위해서는 Oracle 사이트에 접속해서 다운로드해야 합니다.
하지만 오라클 사이트에서 다운 받기 위해서는 회원 가입을 하고 로그인 한 상태에서 다운로드 할 수 있습니다.

지금 소개할 사이트는 MySQL를 다양한 개발 환경에서 사용할 수 있는 각각의 DB Connector를 다운로드 할 수 있는 사이트 입니다.

접속 사이트 주소 : http://ftp.ntu.edu.tw/MySQL/Downloads/

.NET Connector 를 직접 다운 받아 참조에 추가하는 방법

C#에서 MySQL, MariaDB 데이터베이스에 연결해서 사용하기

1. 참조에 MySql.Data가 추가되었는지 확인하고, using MySql.Data.MySqlClient; 선언해 줍니다.

2. Connection, DataReader, DataAdapter, Command 앞에 MySql이 붙게 됩니다. (MySqlConnection, MySqlDataReader, MySqlDataAdapter, MySqlCommand)

using MySql.Data.MySqlClient;
 
string connectionString = “Server=server; Database=dbname; user id=sqluser; password=abc123”;
//또는 connectionString = “Server=server; Port=3312; Database=dbname; uid=sqluser; pwd=abc123”;
 
//Data Reader
using (MySqlConnection connection = new MySqlConnection(connectionString))
{
    connection.Open();
 
    MySqlCommand command = new MySqlCommand(“SELECT productID, productName FROM product”, connection);
    MySqlDataReader dr = command.ExecuteReader();
                
    if (dr.HasRows)
    {
        dr.Read();
        string prodID = dr[“productID”].ToString();
    }
    //using 안에서 connection.Open()을 했기 때문에 굳이 connection.Close() 해 줄 필요가 없음.
}
 
//Data Adapter
DataTable dataTable = new DataTable();
 
using (MySqlDataAdapter adapter = new MySqlDataAdapter(“SELECT productID, productName FROM product”, connectionString))
{
    adapter.Fill(dataTable);
}
 
 





이 글이 도움이 되었기를 바랍니다. ^-^


답글 남기기