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 접속을 알고 싶은 초보자를 위해 작성해봤습니다.
'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 |