다음을 통해 공유


SqlDataAdapter 클래스

정의

SQL Server 데이터베이스를 채우고 DataSet 업데이트하는 데 사용되는 데이터 명령 및 데이터베이스 연결 집합을 나타냅니다. 이 클래스는 상속할 수 없습니다.

public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
type SqlDataAdapter = class
    inherit DbDataAdapter
    interface IDbDataAdapter
    interface IDataAdapter
    interface ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable
상속
구현

예제

다음 예제에서는 SqlCommand, SqlDataAdapterSqlConnection 데이터베이스에서 레코드를 선택하고 선택한 행으로 DataSet 채웁니다. 채워진 DataSet 값이 반환됩니다. 이를 위해 메서드는 초기화된 DataSet연결 문자열 및 Transact-SQL SELECT 문인 쿼리 문자열을 전달합니다.

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와 SQL DataSet Server 간의 브리지 역할을 합니다. 데이터 SqlDataAdapter 원본의 데이터와 일치하도록 데이터를 변경하고 데이터 원본에 DataSet 대해 적절한 Transact-SQL 문을 사용하여 데이터 원본의 데이터와 Update일치하도록 데이터 원본의 데이터를 DataSet변경하는 매핑Fill을 통해 이 브리지를 제공합니다. 업데이트는 행별로 수행됩니다. 삽입, 수정 및 삭제된 모든 행 Update 에 대해 메서드는 행에 대해 수행된 변경 유형(InsertUpdate또는Delete)을 결정합니다. 변경 Insert유형에 따라 , Update또는 Delete 명령 템플릿이 실행하여 수정된 행을 데이터 원본으로 전파합니다. 채우기는 SqlDataAdapterDataSet반환된 데이터에 필요한 테이블과 열이 아직 없는 경우 만듭니다. 그러나 기본 키 정보는 속성을 AddWithKey설정하지 않는 한 암시적으로 생성된 스키마에 MissingSchemaAction 포함되지 않습니다. 를 SqlDataAdapter 사용하여 FillSchema데이터로 채우기 전에 기본 키 정보를 포함하여 스키마DataSet를 만들 수도 있습니다. 자세한 내용은 데이터 세트에 기존 제약 조건 추가를 참조하세요.

SqlDataAdapter는 SQL Server 데이터베이스에 연결할 때 성능 향상과 SqlCommand 함께 SqlConnection 사용됩니다.

메모

SQL Server 저장 프로시저를 사용하여 DataAdapter를 사용하여 데이터를 편집하거나 삭제하는 경우 저장 프로시저 정의에서 SET NOCOUNT ON을 사용하지 않아야 합니다. 이로 인해 영향을 받은 행 수가 0으로 반환되고, DataAdapter는 이를 동시성 충돌로 해석합니다. 이 경우 DBConcurrencyException이 던져집니다.

SqlDataAdapter 또한 데이터의 로드 및 업데이트를 용이하게 하는 , InsertCommandDeleteCommand, UpdateCommandTableMappings 속성도 포함됩니다SelectCommand.

인스턴스 SqlDataAdapter 를 만들면 읽기/쓰기 속성이 초기 값으로 설정됩니다. 이러한 값의 목록은 SqlDataAdapter 생성자를 참조하세요.

InsertCommandDeleteCommandUpdateCommand 매개 변수 메커니즘을 통해 수정된 모든 행의 개별 값으로 자동으로 채워진 제네릭 템플릿입니다.

데이터 원본에 전파하는 모든 열에 대해 매개 변수를 < a0/> 또는 .에 추가해야 합니다. SourceColumn 개체의 DbParameter 속성을 열 이름으로 설정해야 합니다. 이 설정은 매개 변수 값이 수동으로 설정되지 않고 현재 처리된 행의 특정 열에서 가져온 것임을 나타냅니다.

메모

InvalidOperationException 메서드가 Fill 호출되고 테이블에 클라이언트 컴퓨터에서 사용할 수 없는 사용자 정의 형식이 포함된 경우 발생합니다. 자세한 내용은 CLR 사용자 정의 형식을 참조하세요.

생성자

Name Description
SqlDataAdapter()

SqlDataAdapter 클래스의 새 인스턴스를 초기화합니다.

SqlDataAdapter(SqlCommand)

속성으로 지정된 SqlCommand 클래스의 SqlDataAdapter 새 인스턴스를 SelectCommand 초기화합니다.

SqlDataAdapter(String, SqlConnection)

개체와 함께 클래스의 SqlDataAdapter 새 인스턴스를 SelectCommandSqlConnection 초기화합니다.

SqlDataAdapter(String, String)

연결 문자열과 함께 클래스의 SqlDataAdapter 새 인스턴스를 SelectCommand 초기화합니다.

필드

Name Description
DefaultSourceTableName

개체에서 테이블 매핑에 DataAdapter 사용하는 기본 이름입니다.

(다음에서 상속됨 DbDataAdapter)

속성

Name Description
AcceptChangesDuringFill

채우기 작업 중에 추가 DataTable 된 후 호출 DataRow 되는지 여부를 AcceptChanges() 나타내는 값을 가져오거나 설정합니다.

(다음에서 상속됨 DataAdapter)
AcceptChangesDuringUpdate

를 사용하는 동안 Update(DataSet)호출되는지 여부를 AcceptChanges() 가져오거나 설정합니다.

(다음에서 상속됨 DataAdapter)
CanRaiseEvents

구성 요소가 이벤트를 발생시키는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 Component)
Container

IContainer 포함하는 값을 가져옵니다 Component.

(다음에서 상속됨 Component)
ContinueUpdateOnError

행 업데이트 중에 오류가 발생할 때 예외를 생성할지 여부를 지정하는 값을 가져오거나 설정합니다.

(다음에서 상속됨 DataAdapter)
DeleteCommand

데이터 집합에서 레코드를 삭제하는 Transact-SQL 문 또는 저장 프로시저를 가져오거나 설정합니다.

DesignMode

현재 디자인 모드인지 여부를 Component 나타내는 값을 가져옵니다.

(다음에서 상속됨 Component)
Events

Component에 연결된 이벤트 처리기 목록을 가져옵니다.

(다음에서 상속됨 Component)
FillCommandBehavior

데이터 어댑터를 채우는 데 사용되는 명령의 동작을 가져오거나 설정합니다.

(다음에서 상속됨 DbDataAdapter)
FillLoadOption

어댑터에서 LoadOption 어댑터를 채우는 DataTableDbDataReader방법을 결정하는 값을 가져오거나 설정합니다.

(다음에서 상속됨 DataAdapter)
InsertCommand

데이터 원본에 새 레코드를 삽입하는 Transact-SQL 문 또는 저장 프로시저를 가져오거나 설정합니다.

MissingMappingAction

들어오는 데이터에 일치하는 테이블 또는 열이 없는 경우 수행할 작업을 결정합니다.

(다음에서 상속됨 DataAdapter)
MissingSchemaAction

기존 DataSet 스키마가 들어오는 데이터와 일치하지 않을 때 수행할 작업을 결정합니다.

(다음에서 상속됨 DataAdapter)
ReturnProviderSpecificTypes

메서드가 Fill 공급자별 값 또는 일반적인 CLS 규격 값을 반환해야 하는지 여부를 가져오거나 설정합니다.

(다음에서 상속됨 DataAdapter)
SelectCommand

데이터 원본에서 레코드를 선택하는 데 사용되는 Transact-SQL 문 또는 저장 프로시저를 가져오거나 설정합니다.

Site

ISite값을 Component 가져오거나 설정합니다.

(다음에서 상속됨 Component)
TableMappings

원본 테이블과 DataTable.

(다음에서 상속됨 DataAdapter)
UpdateBatchSize

서버에 대한 각 왕복에서 처리되는 행 수를 가져오거나 설정합니다.

UpdateCommand

데이터 원본의 레코드를 업데이트하는 데 사용되는 Transact-SQL 문 또는 저장 프로시저를 가져오거나 설정합니다.

메서드

Name Description
AddToBatch(IDbCommand)

IDbCommand 현재 일괄 처리에 a를 추가합니다.

(다음에서 상속됨 DbDataAdapter)
ClearBatch()

일괄 처리에서 모든 IDbCommand 개체를 제거합니다.

(다음에서 상속됨 DbDataAdapter)
CloneInternals()
사용되지 않음.
사용되지 않음.
사용되지 않음.
사용되지 않음.

이 인스턴스의 복사본을 DataAdapter만듭니다.

(다음에서 상속됨 DataAdapter)
CreateObjRef(Type)

원격 개체와 통신하는 데 사용되는 프록시를 생성하는 데 필요한 모든 관련 정보를 포함하는 개체를 만듭니다.

(다음에서 상속됨 MarshalByRefObject)
CreateRowUpdatedEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

RowUpdatedEventArgs 클래스의 새 인스턴스를 초기화합니다.

(다음에서 상속됨 DbDataAdapter)
CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

RowUpdatingEventArgs 클래스의 새 인스턴스를 초기화합니다.

(다음에서 상속됨 DbDataAdapter)
CreateTableMappings()

DataTableMappingCollection를 만듭니다.

(다음에서 상속됨 DataAdapter)
Dispose()

에서 사용하는 모든 리소스를 Component해제합니다.

(다음에서 상속됨 Component)
Dispose(Boolean)

관리되지 않는 리소스를 DbDataAdapter 해제하고 관리되는 리소스를 선택적으로 해제합니다.

(다음에서 상속됨 DbDataAdapter)
Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
ExecuteBatch()

현재 일괄 처리를 실행합니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior)

원본 테이블 이름, 명령 문자열 및 명령 동작을 사용하여 데이터 원본의 행과 일치하도록 지정된 범위 DataSetDataSet 행을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataSet, Int32, Int32, String)

지정한 범위 DataSet 의 행을 추가하거나 새로 고쳐서 데이터 원본의 행과 일치하는 행 및 DataTable 이름을 사용합니다DataSet.

(다음에서 상속됨 DbDataAdapter)
Fill(DataSet, String, IDataReader, Int32, Int32)

및 이름을 사용하여 데이터 원본의 행과 IDataReader 일치하도록 지정된 범위 DataSet 의 행을 DataSetDataTable추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataSet, String)

및 이름을 사용하여 데이터 원본의 DataSet 행과 DataTable 일치하도록 행을 DataSet 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataSet)

에서 DataSet행을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataTable, IDataReader)

지정된 DataTable 이름과 이름을 사용하여 데이터 원본의 행과 IDataReader 일치하도록 행 DataTable 을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataTable, IDbCommand, CommandBehavior)

지정된 DataTableIDbCommand 행을 DataTable 사용하여 데이터 원본의 행과 CommandBehavior일치하도록 행을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataTable)

이름을 사용하여 DataTable 데이터 원본의 행과 일치하도록 지정된 범위 DataSet 의 행을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
Fill(DataTable[], IDataReader, Int32, Int32)

데이터 원본의 행과 일치하도록 개체 컬렉션의 DataTable 지정된 범위에서 행을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DataAdapter)
Fill(DataTable[], Int32, Int32, IDbCommand, CommandBehavior)

지정한 범위 DataSet 의 행을 추가하거나 새로 고쳐서 데이터 원본의 행과 일치하는 행 및 DataTable 이름을 사용합니다DataSet.

(다음에서 상속됨 DbDataAdapter)
Fill(Int32, Int32, DataTable[])

지정된 레코드에서 시작하여 지정된 최대 레코드 수까지 검색하여 데이터 원본의 행과 일치하도록 하나 이상의 DataTable 개체에 행을 추가하거나 새로 고칩니다.

(다음에서 상속됨 DbDataAdapter)
FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior)

지정된 에 a DataTable 를 추가하고 지정된 DataSet 스키마에 따라 SchemaType데이터 원본의 스키마와 일치하도록 구성합니다.

(다음에서 상속됨 DbDataAdapter)
FillSchema(DataSet, SchemaType, String, IDataReader)

지정된 에 a DataTable 를 추가합니다 DataSet.

(다음에서 상속됨 DataAdapter)
FillSchema(DataSet, SchemaType, String)

지정된 항목에 a DataTable 를 추가하고 지정된 DataSet 스키마 및 에 따라 SchemaType 데이터 원본의 스키마와 DataTable일치하도록 구성합니다.

(다음에서 상속됨 DbDataAdapter)
FillSchema(DataSet, SchemaType)

명명된 DataTableDataSet "Table"을 지정된 테이블에 추가하고 지정된 스키마에 따라 SchemaType데이터 원본의 스키마와 일치하도록 구성합니다.

(다음에서 상속됨 DbDataAdapter)
FillSchema(DataTable, SchemaType, IDataReader)

지정된 에 a DataTable 를 추가합니다 DataSet.

(다음에서 상속됨 DataAdapter)
FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior)

지정된 , 명령 문자열 및 CommandBehavior 값을 기반으로 지정된 DataTable 스키마를 SchemaType구성합니다.

(다음에서 상속됨 DbDataAdapter)
FillSchema(DataTable, SchemaType)

지정된 스키마를 기반으로 지정한 DataTable 스키마를 구성합니다 SchemaType.

(다음에서 상속됨 DbDataAdapter)
GetBatchedParameter(Int32, Int32)

IDataParameter 현재 일괄 처리의 명령 중 하나에서 반환합니다.

(다음에서 상속됨 DbDataAdapter)
GetBatchedRecordsAffected(Int32, Int32, Exception)

더 큰 일괄 처리된 업데이트 내에서 개별 업데이트 시도에 대한 정보를 반환합니다.

(다음에서 상속됨 DbDataAdapter)
GetFillParameters()

SQL SELECT 문을 실행할 때 사용자가 설정한 매개 변수를 가져옵니다.

(다음에서 상속됨 DbDataAdapter)
GetHashCode()

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetLifetimeService()
사용되지 않음.

이 인스턴스의 수명 정책을 제어하는 현재 수명 서비스 개체를 검색합니다.

(다음에서 상속됨 MarshalByRefObject)
GetService(Type)

또는 해당 서비스에서 제공하는 서비스를 나타내는 개체를 Component 반환합니다 Container.

(다음에서 상속됨 Component)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
HasTableMappings()

생성되었는지 여부를 DataTableMappingCollection 나타냅니다.

(다음에서 상속됨 DataAdapter)
InitializeBatching()

에 대한 DbDataAdapter일괄 처리를 초기화합니다.

(다음에서 상속됨 DbDataAdapter)
InitializeLifetimeService()
사용되지 않음.

이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다.

(다음에서 상속됨 MarshalByRefObject)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
MemberwiseClone(Boolean)

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다.

(다음에서 상속됨 MarshalByRefObject)
OnFillError(FillErrorEventArgs)

FillError 이벤트를 발생시킵니다.

(다음에서 상속됨 DbDataAdapter)
OnRowUpdated(RowUpdatedEventArgs)

.NET 데이터 공급자의 이벤트를 발생합니다 RowUpdated .

(다음에서 상속됨 DbDataAdapter)
OnRowUpdating(RowUpdatingEventArgs)

.NET 데이터 공급자의 이벤트를 발생합니다 RowUpdating .

(다음에서 상속됨 DbDataAdapter)
ResetFillLoadOption()

FillLoadOption 기본 상태로 다시 설정되고 적용됩니다 Fill(DataSet)AcceptChangesDuringFill.

(다음에서 상속됨 DataAdapter)
ShouldSerializeAcceptChangesDuringFill()

속성을 유지할지 여부를 AcceptChangesDuringFill 결정합니다.

(다음에서 상속됨 DataAdapter)
ShouldSerializeFillLoadOption()

속성을 유지할지 여부를 FillLoadOption 결정합니다.

(다음에서 상속됨 DataAdapter)
ShouldSerializeTableMappings()

하나 이상의 DataTableMapping 개체가 존재하고 유지되어야 하는지 여부를 결정합니다.

(다음에서 상속됨 DataAdapter)
TerminateBatching()

에 대한 DbDataAdapter일괄 처리를 종료합니다.

(다음에서 상속됨 DbDataAdapter)
ToString()

String(있는 경우)의 Component이름을 포함하는 값을 반환합니다. 이 메서드는 재정의해서는 안 됩니다.

(다음에서 상속됨 Component)
Update(DataRow[], DataTableMapping)

지정된 개체 배열에서 삽입, 업데이트 또는 삭제된 각 행에 대해 해당 INSERT, UPDATE 또는 DELETE 문을 실행하여 데이터베이스의 DataRow 값을 업데이트합니다.

(다음에서 상속됨 DbDataAdapter)
Update(DataRow[])

지정된 배열 DataSet에서 삽입, 업데이트 또는 삭제된 각 행에 대해 해당 INSERT, UPDATE 또는 DELETE 문을 실행하여 데이터베이스의 값을 업데이트합니다.

(다음에서 상속됨 DbDataAdapter)
Update(DataSet, String)

지정된 DataTable 이름을 사용하여 삽입, 업데이트 또는 삭제된 각 행에 대해 해당 INSERT, UPDATE 또는 DELETE 문을 실행하여 데이터베이스의 DataSet 값을 업데이트합니다.

(다음에서 상속됨 DbDataAdapter)
Update(DataSet)

지정된 DataSet행에 삽입, 업데이트 또는 삭제된 각 행에 대해 해당 INSERT, UPDATE 또는 DELETE 문을 실행하여 데이터베이스의 값을 업데이트합니다.

(다음에서 상속됨 DbDataAdapter)
Update(DataTable)

지정된 DataTable행에 삽입, 업데이트 또는 삭제된 각 행에 대해 해당 INSERT, UPDATE 또는 DELETE 문을 실행하여 데이터베이스의 값을 업데이트합니다.

(다음에서 상속됨 DbDataAdapter)

이벤트

Name Description
Disposed

구성 요소가 메서드 호출에 Dispose() 의해 삭제될 때 발생합니다.

(다음에서 상속됨 Component)
FillError

채우기 작업 중에 오류가 발생할 때 반환됩니다.

(다음에서 상속됨 DbDataAdapter)
RowUpdated

Update(DataSet) 데이터 원본에 대해 명령을 실행한 후에 발생합니다. 업데이트를 시도하므로 이벤트가 발생합니다.

RowUpdating

Update(DataSet) 데이터 원본에 대해 명령을 실행하기 전에 발생합니다. 업데이트를 시도하므로 이벤트가 발생합니다.

명시적 인터페이스 구현

Name Description
ICloneable.Clone()

이 멤버에 대한 설명은 을 참조하세요 Clone().

IDataAdapter.TableMappings

원본 테이블이 데이터 세트 테이블에 매핑되는 방법을 나타내는 컬렉션을 가져옵니다.

(다음에서 상속됨 DataAdapter)
IDbDataAdapter.DeleteCommand

이 멤버에 대한 설명은 을 참조하세요 DeleteCommand.

IDbDataAdapter.InsertCommand

이 멤버에 대한 설명은 을 참조하세요 InsertCommand.

IDbDataAdapter.SelectCommand

이 멤버에 대한 설명은 을 참조하세요 SelectCommand.

IDbDataAdapter.UpdateCommand

이 멤버에 대한 설명은 을 참조하세요 UpdateCommand.

적용 대상

추가 정보