728x90

C# 에서 MySQL 에 접속하여 게시물 갯수를 구하는 간단한 코드이다.


먼저 상시적으로 사용되는 것은 Class 상위에 둔다.

C# 에서 MySQL 을 접속시 localhost 의미하는게 뭔지 모르는 개발 입문자들이 많은거 같다.

localhost = 서버와 클라이언트(C#으로 만든 프로그램)가 같은 곳에 존재

호스팅을 이용할 경우에는 클라이언트와 서버의 물리적인 장소가 서로 다르다. 이 경우에는 서버의 실제 접속 IP주소를 적어줘야 한다.


MySQL 에서는 외부에서 접속할 수 있는 사용자권한을 부여해야 한다. 이 사항은 http://link2me.tistory.com/431 게시글을 읽어보면 이해가 될 것이다.


이 두가지 사항을 알고 이제 코드를 작성해보자.


MySQL 접속하여 결과를 얻는 방법은 여러가지가 있다.

여기서는 Select count(*) FROM 테이블명 WHERE 조건; 인 단순 예제를 작성했다.

object result = cmd.ExecuteScalar();

ExecuteScalar() 메서드는 쿼리를 실행하고 쿼리에서 반환된 결과 집합의 첫번째 행의 첫번째 열을 반환한다.

추가 열이나 행은 무시한다. 집계함수(SUM, AVG, MAX, MIN) 를 이용한 결과를 구할 때 사용된다.

ConnectionString은 암호화를 하여 저장하고 실제 사용할 때만 복호화를 할 수 있으면 제일 좋다.


=== 소스코드 ===

string ConnectionString = "SERVER=localhost;DATABASE=dbname;UID=dbuserid;PASSWORD=dbpassword;";
MySqlConnection myConn;

private int totalcnt()
{
    int cnt = 0;
    try
    {
        myConn = new MySqlConnection(ConnectionString);
        if (myConn.State == ConnectionState.Closed)
        {
            myConn.Open();
        }
        string strqry = "select count(uid) from data";
        MySqlCommand cmd = new MySqlCommand(strqry, myConn);
        cnt = int.Parse(cmd.ExecuteScalar().ToString());
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
    finally
    {
        this.myConn.Close();
    }
    return cnt;
}


본 게시글은 MySQL 접속을 알고 싶은 초보자를 위해 작성해봤습니다.



728x90

'C# > C# SQL' 카테고리의 다른 글

C# MySQL 데이터를 ListView 에 Add 하는 방법 (1)  (2) 2015.12.29
C# DataSet  (6) 2015.12.20
C# MySQL 쿼리문과 연동 처리  (0) 2015.09.12
C# 콤보박스(comboBox) 와 SQL 연동  (0) 2015.09.10
C# 과 MySQL 연동  (0) 2015.08.29
블로그 이미지

Link2Me

,