SqlDataAdapter 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
DataSet 를 채우고 SQL Server 데이터베이스를 업데이트하는 데 사용되는 데이터베이스 연결 및 데이터 명령 집합을 나타냅니다. 이 클래스는 상속될 수 없습니다.
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter
type SqlDataAdapter = class
inherit DbDataAdapter
interface IDbDataAdapter
interface IDataAdapter
interface ICloneable
type SqlDataAdapter = class
inherit DbDataAdapter
interface IDataAdapter
interface IDbDataAdapter
interface ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
- 상속
- 구현
예제
다음 예제에서는 , SqlDataAdapter및 SqlConnection 를 사용하여 SqlCommand데이터베이스에서 레코드를 선택하고 선택한 행으로 를 DataSet 채웁니다. 채워진 DataSet 반환 됩니다. 이를 위해 메서드는 Transact-SQL SELECT 문인 초기화된 DataSet, 연결 문자열 및 쿼리 문자열을 전달합니다.
private static DataSet SelectRows(DataSet dataset,
string connectionString,string queryString)
{
using (SqlConnection connection =
new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(
queryString, connection);
adapter.Fill(dataset);
return dataset;
}
}
Public Function SelectRows( _
ByVal dataSet As DataSet, ByVal connectionString As String, _
ByVal queryString As String) As DataSet
Using connection As New SqlConnection(connectionString)
Dim adapter As New SqlDataAdapter()
adapter.SelectCommand = New SqlCommand( _
queryString, connection)
adapter.Fill(dataSet)
Return dataSet
End Using
End Function
설명
는 SqlDataAdapter데이터를 검색하고 저장하기 위한 와 SQL Server 간의 DataSet 브리지 역할을 합니다. 는 SqlDataAdapter 데이터 원본의 데이터와 일치하도록 의 DataSet 데이터를 변경하는 를 매핑하고Update, 데이터 원본에 적절한 Transact-SQL 문을 사용하여 의 데이터 원본의 데이터를 의 데이터DataSet와 일치하도록 변경하는 을 매핑Fill하여 이 브리지를 제공합니다. 업데이트는 행별로 수행됩니다. 삽입, 수정 및 삭제된 모든 행에 대해 메서드는 해당 행 Update 에 대해 수행된 변경 유형(Insert
, Update
또는 Delete
)을 결정합니다. 변경 유형에 따라 , Insert
Update
또는 Delete
명령 템플릿이 실행되어 수정된 행을 데이터 원본에 전파합니다. 이 SqlDataAdapter 를 채우 DataSet면 반환된 데이터에 필요한 테이블과 열이 아직 없는 경우 만듭니다. 그러나 기본 키 정보는 속성이 로 설정AddWithKey되지 않는 한 암시적으로 생성된 스키마에 MissingSchemaAction 포함되지 않습니다. 를 사용하여 데이터로 SqlDataAdapter 채우기 전에 기본 키 정보를 포함하여 의 DataSet스키마를 만들 수도 FillSchema
있습니다. 자세한 내용은 기존 제약 조건 데이터 세트에 추가를 참조하세요.
SqlDataAdapter는 및 SqlCommand 와 함께 SqlConnection 사용하여 SQL Server 데이터베이스에 연결할 때 성능을 향상합니다.
참고
SQL Server 저장 프로시저를 사용하여 DataAdapter
를 사용하여 데이터를 편집하거나 삭제하는 경우 저장 프로시저 정의에서 SET NOCOUNT ON을 사용하지 않아야 합니다. 사용할 경우에는 영향을 받는 행 수가 0으로 반환되어 DataAdapter
가 동시성 충돌로 해석됩니다. 이 경우 DBConcurrencyException이 throw됩니다.
SqlDataAdapter 에는 데이터 로드 및 업데이트를 용이하게 하는 , DeleteCommandInsertCommand, , UpdateCommand및 TableMappings 속성도 포함됩니다SelectCommand.
의 instance SqlDataAdapter 만들어지면 읽기/쓰기 속성이 초기 값으로 설정됩니다. 이러한 값의 목록을 보려면 참조는 SqlDataAdapter 생성자입니다.
, DeleteCommand및 UpdateCommand 는 InsertCommand매개 변수 메커니즘을 통해 수정된 모든 행의 개별 값으로 자동으로 채워진 제네릭 템플릿입니다.
의 데이터 원본에 전파하는 모든 열에 대해 Update, 또는 DeleteCommand
에 매개 변수를 InsertCommand
UpdateCommand
추가해야 합니다.
SourceColumn 개체의 DbParameter 속성을 열 이름으로 설정해야 합니다. 이 설정은 매개 변수의 값이 수동으로 설정되지 않고 현재 처리된 행의 특정 열에서 가져온다는 것을 나타냅니다.
참고
InvalidOperationException 메서드가 Fill 호출되고 테이블에 클라이언트 컴퓨터에서 사용할 수 없는 사용자 정의 형식이 포함된 경우 이 발생합니다. 자세한 내용은 CLR 사용자 정의 형식을 참조하세요.
생성자
SqlDataAdapter() |
SqlDataAdapter 클래스의 새 인스턴스를 초기화합니다. |
SqlDataAdapter(SqlCommand) |
SqlDataAdapter 속성으로서 지정된 SqlCommand를 사용하여 SelectCommand 클래스의 새 인스턴스를 초기화합니다. |
SqlDataAdapter(String, SqlConnection) |
SqlDataAdapter 및 SelectCommand 개체를 사용하여 SqlConnection 클래스의 새 인스턴스를 초기화합니다. |
SqlDataAdapter(String, String) |
SqlDataAdapter와 연결 문자열을 사용하여 SelectCommand 클래스의 새 인스턴스를 초기화합니다. |
필드
DefaultSourceTableName |
DataAdapter 개체에서 테이블 매핑에 사용하는 기본 이름입니다. (다음에서 상속됨 DbDataAdapter) |
속성
AcceptChangesDuringFill |
채우기 작업을 수행하는 동안 DataTable에 추가된 DataRow에 대해 AcceptChanges()가 호출되는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 DataAdapter) |
AcceptChangesDuringUpdate |
AcceptChanges()를 수행하는 동안 Update(DataSet)가 호출되는지 여부를 나타내는 값을 가져오거나 설정합니다. (다음에서 상속됨 DataAdapter) |
CanRaiseEvents |
구성 요소가 이벤트를 발생시킬 수 있는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Component) |
Container |
IContainer을 포함하는 Component를 가져옵니다. (다음에서 상속됨 Component) |
ContinueUpdateOnError |
행을 업데이트하는 동안 오류가 발생할 때 예외를 생성할지 여부를 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 DataAdapter) |
DeleteCommand |
레코드를 데이터 집합으로부터 삭제할 Transact-SQL 문이나 저장 프로시저를 가져오거나 설정합니다. |
DesignMode |
Component가 현재 디자인 모드인지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Component) |
Events |
이 Component에 연결된 이벤트 처리기의 목록을 가져옵니다. (다음에서 상속됨 Component) |
FillCommandBehavior |
데이터 어댑터를 채우는 데 사용되는 명령의 동작을 가져오거나 설정합니다. (다음에서 상속됨 DbDataAdapter) |
FillLoadOption |
어댑터가 LoadOption에서 DataTable을 채우는 방법을 결정하는 DbDataReader을 가져오거나 설정합니다. (다음에서 상속됨 DataAdapter) |
InsertCommand |
새로운 레코드를 데이터 소스에 삽입할 Transact-SQL 문이나 저장 프로시저를 가져오거나 설정합니다. |
MissingMappingAction |
들어오는 데이터와 일치하는 테이블이나 열이 없는 경우 수행할 동작을 결정합니다. (다음에서 상속됨 DataAdapter) |
MissingSchemaAction |
기존 DataSet 스키마가 들어오는 데이터와 일치하지 않는 경우 수행할 동작을 결정합니다. (다음에서 상속됨 DataAdapter) |
ReturnProviderSpecificTypes |
공급자별 값이나 공용 CLS 규격 값 중에서 |
SelectCommand |
데이터 소스에서 레코드를 선택하는 데 사용하는 Transact-SQL 문이나 저장 프로시저를 가져오거나 설정합니다. |
Site |
Component의 ISite를 가져오거나 설정합니다. (다음에서 상속됨 Component) |
TableMappings |
원본 테이블과 DataTable간의 기본 매핑을 제공하는 컬렉션을 가져옵니다. (다음에서 상속됨 DataAdapter) |
UpdateBatchSize |
서버에 대한 각 라운드트립에서 처리된 행의 수를 가져오거나 설정합니다. |
UpdateBatchSize |
일괄 작업 처리 지원을 활성화하거나 비활성화하는 값을 가져오거나 설정하고 일괄 작업에서 실행할 수 있는 명령의 수를 지정합니다. (다음에서 상속됨 DbDataAdapter) |
UpdateCommand |
데이터 소스에서 레코드를 업데이트하는 데 사용하는 Transact-SQL 문이나 저장 프로시저를 가져오거나 설정합니다. |
메서드
이벤트
Disposed |
Dispose() 메서드를 호출하여 구성 요소를 삭제할 때 발생합니다. (다음에서 상속됨 Component) |
FillError |
채우기 작업 도중에 오류가 발생할 때 반환됩니다. (다음에서 상속됨 DbDataAdapter) |
RowUpdated |
데이터 소스에 대해 명령이 실행된 후에 Update(DataSet)를 수행하는 동안 발생합니다. 업데이트를 시도했으므로 이벤트가 발생합니다. |
RowUpdating |
데이터 소스에 대해 명령이 실행되기 전에 Update(DataSet)를 수행하는 동안 발생합니다. 업데이트를 시도했으므로 이벤트가 발생합니다. |
명시적 인터페이스 구현
ICloneable.Clone() |
이 멤버에 대한 설명은 Clone()를 참조하세요. |
IDataAdapter.TableMappings |
원본 테이블이 데이터 세트 테이블에 매핑되는 방법을 나타내는 컬렉션을 가져옵니다. (다음에서 상속됨 DataAdapter) |
IDbDataAdapter.DeleteCommand |
이 멤버에 대한 설명은 DeleteCommand를 참조하세요. |
IDbDataAdapter.InsertCommand |
이 멤버에 대한 설명은 InsertCommand를 참조하세요. |
IDbDataAdapter.SelectCommand |
이 멤버에 대한 설명은 SelectCommand를 참조하세요. |
IDbDataAdapter.UpdateCommand |
이 멤버에 대한 설명은 UpdateCommand를 참조하세요. |
적용 대상
추가 정보
.NET