2018년 1월 26일 금요일

MariaDB C#(Form) 과 연동 방법

MariaDB MySQL 과 같은 방식의 연동을 지원하기 때문에 아래 사이트에서 Connector 패키지를 다운로드 하여

설치합니다

 

https://dev.mysql.com/downloads/connector/net/

 

 

 

 

 

 

** 검색이 뜨지 않는다면 아래 "찾아보기" 버튼을 눌러서 

 

 

Connector 가 설치된 곳의 파일을 직접 선택해 주면 추가가 된다

 

 

이후 MySQL 과 동일한 방법으로 추가한다

 

만일 아래와 같이 에러가 발생한다면 .Net Framework 버젼이 안맞는 것이므로 아래와 같이 추가 변경을 해준다

 

1>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3268: 기본 참조 "MySql.Data"() 현재 대상 프레임워크에서 확인할 수 없는 "Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 에 간접적으로 종속되어 있기 때문에 확인할 수 없습니다. ".NETFramework,Version=v2.0". 이 문제를 해결하려면 참조 "MySql.Data"() 제거하거나 응용 프로그램의 대상을 "Microsoft.Build.Tasks.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"() 포함된 프레임워크 버전으로 변경하십시오.

1>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3258: 기본 참조 "MySql.Data"() 현재 대상 프레임워크에 있는 버전 "2.0.0.0"보다 높은 버전인 "4.0.0.0"() 지정되어 있는 .NET Framework 어셈블리 "System.Data.OracleClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"에 종속되어 있기 때문에 확인할 수 없습니다.

1>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3258: 기본 참조 "MySql.Data"() 현재 대상 프레임워크에 있는 버전 "2.0.0.0"보다 높은 버전인 "4.0.0.0"() 지정되어 있는 .NET Framework 어셈블리 "System.Drawing.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"에 종속되어 있기 때문에 확인할 수 없습니다.

1>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): warning MSB3268: 기본 참조 "MySql.Data"() 현재 대상 프레임워크에서 확인할 수 없는 "System.Xaml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 에 간접적으로 종속되어 있기 때문에 확인할 수 없습니다. ".NETFramework,Version=v2.0". 이 문제를 해결하려면 참조 "MySql.Data"() 제거하거나 응용 프로그램의 대상을 "System.Xaml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"() 포함된 프레임워크 버전으로 변경하십시오.

1>  COM 참조 'KHOpenAPILib'() ActiveX 컨트롤 'AxKHOpenAPILib'에 대한 interop 어셈블리이지만 /link 플래그로 컴파일러에 의해 링크되도록 표시되어 있습니다. COM 참조는 참조로 간주되지만 링크되지 않습니다.

 

 

프로젝트 속성으로 이동한다

 

 

만일 추가로 또 에러가 난다면 에러가 날때 나오는 .Net Version 을 살펴 보고 거기에 맞춰서 프레임워크 값을 수정해 주면된다

 

 

기본적으로 동작이 된다

 

아래는 DB 연결 문자열과 기본 생성 코드 샘플이다

 

        private static string mysql_conn_str = "Server=local;Database=testdb;Uid=root;Pwd=test123;Charset=utf8";

     

        public static bool db_init()

        {

            bool bret = true;

            MySqlConnection conn;

            conn = new MySqlConnection(mysql_conn_str);

            try

            {

                conn.Open();

                if (check_table("users") == false)

                {

                    string sql = "CREATE TABLE users(ID varchar(20), Name nvarchar(20), Passwd nvarchar(20))";

                    MySqlCommand cmd = new MySqlCommand(sql, conn);

                    cmd.ExecuteNonQuery();

                }             

            }

            catch (Exception ex)

            {

                MessageBox.Show("데이터 베이스 오픈 실패 : " + ex.Message, "Database Error [MYSQL]");

                bret = false;

            }

            finally

            {

                conn.Close();

            }

            return bret;

        }

 

댓글 없음:

댓글 쓰기