RedPlus 개인 블로그

시삽: 레드플러스 님 
게시판 이동:
 제목 : 한번 타이핑으로 SQL Server, Oracle에서 모두 사용
글번호: 69
작성자: Administrator ( 레드플러스 / redplus@live.com )
작성일: 2009/09/25 오전 2:56:00 (2009/09/25 오전 2:56:00 수정)
조회수: 3808

Web.config 파일 중 일부...

 <!--[1] 데이터베이스 연결 문자열 기록 -->
 <connectionStrings>
  <!-- SQL Server 전용  -->    
  <add name="ConnectionString" connectionString="Password=Root;Persist Security Info=True;User ID=Root;Initial Catalog=Root;Data Source=." providerName="System.Data.SqlClient"/>
       
        <!-- Oracle 전용
       
        <add name="ConnectionString"
            connectionString="Provider=MSDAORA.1;
            Data Source=//172.16.10.108/orcl;Persist Security Info=True;
            User ID=scott;Password=scott;Unicode=True"
            providerName="System.Data.OleDb" />  -->
       
        <!-- MS Access 전용
        <add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\RedPlus.Book\!ASP.NET 2.0 웹 사이트 프로그래밍.소스\ASPNET2\WebMemoJSON\App_Data\MemoDB.mdb;Persist Security Info=True"
            providerName="System.Data.OleDb" />  -->
       
 </connectionStrings>

웹 폼 중 일부...

private void DisplayData()
{
    //[!] SQL Server, Oracle, Access DB에서 모두 똑같은 코드로 작성하고자한다면???
    //[1] Configuration 정보 가져오기 : ProviderName에 따른 공급자 결정
    DbProviderFactory factory = DbProviderFactories.GetFactory(
        ConfigurationManager.ConnectionStrings["ConnectionString"].ProviderName);
    //[2] 커넥션 : SqlConnection, OleDbConnection 등을 DbConnection으로 통일
    DbConnection con = factory.CreateConnection();
    con.ConnectionString =
        ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    con.Open();
    //[3] 커멘드 : SqlCommand, OracleCommand 등을 DbCommand로 공통처리
    DbCommand cmd = factory.CreateCommand();
    cmd.Connection = con;
    cmd.CommandText =
        "Select * From Categories Where CategoryID Between @First And @Second";
    cmd.CommandType = System.Data.CommandType.Text;
    //[!] 파라미터 추가
    DbParameter first = cmd.CreateParameter();
    first.ParameterName = "@First";
    first.DbType = System.Data.DbType.Int32;
    first.Value = 1;

    DbParameter second = cmd.CreateParameter();
    second.ParameterName = "@Second";
    second.DbType = System.Data.DbType.Int32;
    second.Value = 20;

    cmd.Parameters.Add(first);
    cmd.Parameters.Add(second); 

    //[4] 데이터리더 : SqlDataReader, OleDbDataReader => DbDataReader
    DbDataReader dr = cmd.ExecuteReader();
    //[5] 바인딩
    this.ctlCategoryList.DataSource = dr;
    this.ctlCategoryList.DataBind();
    //[6] 마무리
    con.Close();
}

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트


관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 ★연봉 3000만원 독신 직장인들의 비애★ - Administrator 2009-10-20 3413
현재글 한번 타이핑으로 SQL Server, Oracle에서 모두 사용 - Administrator 2009-09-25 3808
다음글 Visual Studio 2008관련 MCP시험 25% 할인이벤트중이네요 - Administrator 2009-09-18 3197
관련 페이지 리스트
numtitlenamedateview
388 C 언어에서 값 전달과 참조 전달(Call By Value and Call By Re... Administrator 2023-03-09 3562
387 병합 알고리즘 순서도 2022-10-22 5096
386 C 언어 강의: scanf를 엔터키를 기준으로 여러 행으로 값을 입력 받기 Administrator 2022-01-09 4406
385 C 언어: scanf 사용해서 표준 입력인 콘솔로부터 나이를 정수로 입력 받아 출력 Administrator 2022-01-07 3218
384 Java 코드 샘플 - Function 인터페이스로 람다 식 만들기 Administrator 2022-01-04 3114
383 C# 코드 샘플 - 널 조건부 연산자 사용하기 Administrator 2022-01-02 3154
382 C# 코드 샘플 - 널 병합 연산자와 default 키워드 Administrator 2022-01-02 3065
381 C# 코드 샘플 - 널 병합 연산자로 문자열 변수의 NULL 값 확인하기 Administrator 2022-01-02 2978
380 C# 강의 - 14세 미만 체크 메서드 구현 Administrator 2022-01-01 3030
379 C 언어 천 단위 콤마 찍기 thousands_separator.c Administrator 2021-12-30 4164
378 for 문 순서도 - for 문(for loop) 순서도(flowchart) Administrator 2021-12-28 6879
377 C 언어 코드 샘플 - 전처리기 - 조건부 컴파일 Administrator 2021-12-27 3056
376 C 언어 코드 샘플 - 전처리기 - 매크로 함수 Administrator 2021-12-27 3023
375 http-server 설치하기 - 로컬 루프백 주소로 웹페이지 실행 2021-12-27 3026
374 C 언어 코드 샘플 - N명의 학생의 점수를 입력받아 1차원 배열에 저장 후 총점 구... Administrator 2021-12-27 3080
373 Java 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2957
372 C 언어 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2999
371 C# 교과서 강좌 - LINQ - Select 확장 메서드에 익명 형식 사용하기 Administrator 2021-12-26 3117
370 C# 교과서 강의 - LINQ - Select 확장 메서드를 사용하여 새로운 형태로 ... Administrator 2021-12-26 3033
369 C 언어 코드 샘플 - static-shared - 정적(공유) 변수 사용하기 Administrator 2021-12-26 3052
 
 
 
손님 사용자 Anonymous (손님)
로그인 Home