C#에서의 MySql 서버 연결 및 사용 방법 :: DB연동[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

DB연동
[1]
등록일:2008-04-03 17:17:47 (0%)
작성자:
제목:C#에서의 MySql 서버 연결 및 사용 방법

C#에서의 MySql 서버 연결 사용 방법

 

1. .NET MySql 드라이버를 설치 한다.
   -
경우에 따라 다르겠지만 본인의 경우에는 MySql 홈페이지에서 만든 드라이버를 설치 연결을 하니
     euckr
문자셋이 없다는 에러를 내면서 도저히 연결이 되지 않았다.
    
그래서 데브피아에서 검색한 결과MySQLDriverCS라는 드라이버를 알게 되어 이것을 설치 했다..
    
물론 연결이 아주 되었다.

    - 설치 및 사용 방법
     여기에서
받는다. http://sourceforge.net/projects/mysqldrivercs
     그런
설치를 프로젝트에서 참조 시킨다. 만약 참조 화면에 나타나지 않으면 수동으로
     설치된
폴더에 가서 찾아서 참조 시킨다.

 

2. 서버 연결
-
using MySQLDriverCS;
 
………..
  MySQLConnection conn =  new MySQLConnection( new MySQLConnectionString("localhost","mysql","root","").AsString );

MessageBox.Show("Connecting to database");

try

{

        conn.Open();

}

catch(Exception ex)

{

     MessageBox.Show(ex.Message);

        return;

}

 

 

3. MySQLSelectCommand 사용한 쿼리
-
지정된 테이블의 모든 필드를 쿼리
  DataTable dt = new MySQLSelectCommand(Connection, new string[]{"*"}, new string[] {"MoneyResult"}, null, null, null).Table;

foreach(DataRow row in dt.Rows)

{

           int i = 0;

           string AreaCode = row["AreaCode"].ToString();

++i;

    }

 

- 특정 필드 쿼리



 
…………….



 
DataTable dt = new MySQLSelectCommand(DBConn,
                new string[] {"SettingID","SettingValue"},
               new string[] {"Settings"},
               new object[,] {{"SettingID","=",SettingID}},
               null,
               null
            ).Table;
    string Value = null;
    if(dt.Rows.Count!=0)
    {
        Value = dt.Rows[0]["SettingValue] as string;
     }
     else
     {
        // Value not found
      }
      ...

 

- WHERE 사용 방법

   ………………………………………………..
string StartDt = "2005-12-01 00:00:00";                     // WHERE에서 값으로 사용한다.

string EndDt = "2005-12-01 23:59:59";

 

DataTable dt = new MySQLSelectCommand( Connection, new string[]{"*"}, new string[] {"ItemResult"},

                                              new object[,]{ {"Dt",">=",StartDt},{"Dt","<=",EndDt} },

                                                    null, null).Table;

foreach(DataRow row in dt.Rows)

{

            ……………………

}
……………………………………………………..

 

 

- 원래는 쿼리는 MySQLCommand MySQLDataReader를 이용하는 것이 보통 이지만 본인이

 자세히는 모르지만 MySQLDataReader ADO.NET에 있는 비슷한 클래스와 같은 역할을 한다면

 쿼리 후 페치를 할 때 마다 서버에 연결된 상태에서 값을 가져와야 되기 때문에 데이터가 작은

경우가 아니라면 성능에 좀 문제가 되지 않을까 해서 사용하지 않고 MySQLSelectCommand

사용하고 있음.

 

  ………………………………………..

  MySQLCommand cmd = new MySQLCommand("select host,user from mysql.user",conn);

MySQLDataReader reader = cmd.ExecuteReaderEx();

while(reader.Read())

{

            ListViewItem lvi = new ListViewItem("Low Level - Host:"+reader.GetString(0)+" , User:"+reader.GetString(1));

            lvData.Items.Add(lvi);

}

reader.Close();

cmd.Dispose();

   ……………………………………………………………

 

- DataAdapter 를 사용하여 쿼리 하는 방법
)
 
………………………………………………..
 
string strQuery = "SELECT Dt, ItemCode, Cnt FROM ItemResult;
 
MySQLDataAdapter DataAdapter = new MySQLDataAdapter();

MySQLCommand cmd = new MySQLCommand();

cmd.Connection = Connection;

cmd.CommandText = strQuery;

DataAdapter.SelectCommand =  cmd;

                               

DataSet ResultDataSet = new DataSet();

DataAdapter.Fill( ResultDataSet , "ItemResult" );
[본문링크] C#에서의 MySql 서버 연결 및 사용 방법
[1]
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=7144
작성자
비밀번호

 

SSISOCommunity

[이전]

Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.