예제로 배우는 C# 프로그래밍
홈
C# 문법
C# 최신기능
C# 윈폼
코딩가이드
C# 데이타
C# 활용
C# 개발팁
C# 자료구조
C# 멀티쓰레딩
C# 권장도서
C# 웹프로그래밍
C# 네트워크
C# 알고리즘 퀴즈
C# 비트코인
개발자노트
C# 실수
C# 스토리
C# 초보캠프
C# 데이타
C# 데이타 처리
C# SQL 데이타
C# SqlConnection
C# SqlCommand
C# SqlDataReader
C# SqlDataAdapter
C# SqlParameter
Connection Pooling
C# DataSet
C# DataSet 병합
LINQ to SQL
LINQ to SQL 쿼리 1
LINQ to SQL 쿼리 2
LINQ 메서드식 표현
LINQ 삽입,갱신,삭제
LINQ to SQL SP실행
JSON 개요
JavaScriptSerializer
JSON.NET
DataContractJson
JSON: ASP.NET MVC
JSON: WebAPI
JSON: Silverlight
JSON Beautifier
System.Text.Json
FILE: 텍스트 파일
FILE: 이진 파일
XML: Reader/Writer
XML: XmlDocument
XML: LINQ to XML
XML Serialization
EF 기초
EF DbContext
EF Annotation
EF LINQ
C# : SQL 데이타 엑세스
C# (혹은 .NET)에서 SQL 서버의 데이타를 엑세스하는 방법으로 흔히 사용되는 기술로 ADO.NET과
LINQ TO SQL
, Entity Framework 등을 들 수 있다.
ADO.NET
은 기존의 ADO (ActiveX Data Object)로부터 계승되어 .NET에 맞게 나온 데이타 엑세스 클래스들이다.
Entity Framework (EF)
은 .NET에서 ORM (Object-Relational Mapping: 관계형 데이타인 SQL과 객체 지향적 언어를 매핑시키는 중간 클래스들을 만들어 준다)을 전문적으로 구현한 프레임 워크로서 엔터프라이즈에서 전문적인 ORM을 구현하기에 적합하다.
LINQ TO SQL
은 SQL에 대한 LINQ(Language Integrated Query)로서, ORM을 간편하게 사용할 수 있도록 Entity Framework의 서브셋 기능을 지원하며, LINQ에서 쉽게 ORM 매핑 클래스들을 활용할 수 있게 한 것이다.
ADO.NET 클래스
ADO.NET은 Connected 모드(
DataReader
)와 Disconneted 모드(
DataAdapter
) 모두 지원하며, 타겟 데이타의 종류에 따라 다음과 같은 여러 데이타 엑세스 Provider를 지원한다.
Data Provider
네임스페이스
주요 클래스
SQL Server
System.Data.SqlClient
SqlConnection
SqlCommand
SqlDataReader
SqlDataAdapter
SqlParameter
SqlTransaction
OLEDB (예: Access)
System.Data.OleDb
OleDbConnection
OleDbCommand
OleDbDataReader
OleDbDataAdapter
OleDbParameter
OleDbTransaction
ODBC
System.Data.Odbc
OdbcConnection
OdbcCommand
OdbcDataReader
OdbcDataAdapter
OdbcParameter
OdbcTransaction
Oracle
System.Data.OracleClient
OracleConnection
OracleCommand
OracleDataReader
OracleDataAdapter
OracleParameter
OracleTransaction
In-memory 데이타
System.Data
DataSet
DataTable
ADO.NET 클래스를 여러 데이타 소스를 지원해야 한다면, 아래와 같은 공통
인터페이스
나
추상 클래스
를 이용하여 호환성있는 프로그램을 만들 수 있다.
공통 Interface (System.Data)
IDbConnection
IDbCommand
IDataReader
IDbDataAdapter
IDataParameter
IDbTransaction
Abstract 클래스 (System.Data.Common)
DbConnection
DbCommand
DbDataReader
DbDataAdapter
DbParameter
DbTransaction
본 웹사이트는 광고를 포함하고 있습니다. 광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
이전 코멘트 모두 보기
sethseungwonhong@***
7/23/2018 8:30:02 PM
항상 잘 배우고 있습니다.
Alex Lee가 좋아합니다
livey@***
1/22/2019 2:12:04 AM
DB 서버 접속하는게 아닌 직접 생성하여 데이터를 넣은 DataTable 에 linq 가 아닌 sql 쿼리를 string 형태로 전달하여 실행하는것도 가능한가요?
admin@***
1/22/2019 7:05:22 PM
@livey: 가능하지 않습니다.
sjlim70@***
4/16/2020 8:52:13 AM
많이 도움이 됩니다. 감사합니다. 오기 수정해 주세요. ORM (Object-Raltional Mapping에서 Object-Relational로
admin@***
4/16/2020 11:33:58 PM
@sjlim70: 오타 수정하였습니다. 감사합니다!
"예제로 배우는" 시리즈
예제로 배우는 Python
예제로 배우는 GO 프로그래밍
예제로 배우는 SQL 프로그래밍
예제로 배우는 TypeScript
예제로 배우는 Rust
Crypto 스터디 (암호학/암호화폐)
유용한 외부 링크
C# Tips / 퀴즈
성태의 닷넷이야기
.NET 관련 블로그
WinDbg 디버깅 사이트
온라인 HTML 인코더
SQL 개발자를 위한 String Pad