본문 바로가기

C# 윈도우 프로그래밍

c# 데이터베이스 프로그래밍 (mysql/mssql/oracle) 차이점

 

쿼리문에서 사소한 문법차이는 데이터베이스 관련 이므로 생략한다. db 쿼리문에 대해서는 후에 따로 정리한다.

 

우선 코딩상에 차이점은 거의 차이가 안나서 비교한다. 

 

1.  라이브러리 추가

 

mysql / maria db

도구-> nuget패키지관리자->솔루션용 nuget패키지 관리자 에서 mysql 찾아서 추가 후

 

using Mysql.Data.MySqlClient;

 

 

mssql db

using System.Data; 
using System.Data.SqlClient:

이 두줄만 추가하면 된다. nuget패키지 같은게 필요하지 않는다.

 

oracle db

도구-> nuget패키지관리자->솔루션용 nuget패키지 관리자

 

Oracle.ManagedDataAccess 패키지 설치후 

using으로 클라이언트 추가한다.

using Oracle.ManagedDataAccess.Client;

 

==================================================================

 

2.  Select(검색) 쿼리문

 

Mysql(Maria)

 
string CommandText = "SELECT " + db명 + "From user";
DataTable ds= new DataTable();
MySqlDataAdapter da= new MySqlDataAdapter(CommandText,conn);
MySqlCommandBuilder builder= new MySqlCommandBuilder(da);
da.Fill(ds);

 

Mssql

SqlDataAdapter da = new SqlDataAdapter(cmd,conn); 
SqlCommandBuilder builder = new SqlCommandBuilder(da);

 

위를 비교해보면 알듯이. 단지 my 글자만 빼는것도 다른것이 없다

쿼리 자체도 나중에 비교하겠지만 매우 비슷하고

 

Oracle

그냥 이것도 ORACLE로만 바꿔만 주면 된다.

 

 

3.  INSERT(입력) 쿼리문 

 

MYSQL

 

 

MSSQL

SqlCommand cmd = new SqlCommand("insert ~~");
cmd.Parameters.Add("@id", SqlDbType.NVarChar); 
cmd.Parameters.Add("@ssno", SqlDbType.NVarChar); 
if (cmd1.ExecuteNonQuery() > 0) {}

이런식으로 거의 똑같다.

 

코딩할때 따라서 mssql이나 mysql maria db사용할때는 특별히

 

코딩상에 신경쓸필요가없다.

 

이식도 매우 편하고 바로바로 적용가능하다.

 

Oracle

 

 

반응형