SqlCommandBuilder Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
ile ilişkili SQL Server veritabanıyla yapılan değişiklikleri mutabık hale getirmek için DataSet kullanılan tek tablolu komutları otomatik olarak oluşturur. Bu sınıf devralınamaz.
public ref class SqlCommandBuilder sealed : System::ComponentModel::Component
public ref class SqlCommandBuilder sealed : System::Data::Common::DbCommandBuilder
public sealed class SqlCommandBuilder : System.ComponentModel.Component
public sealed class SqlCommandBuilder : System.Data.Common.DbCommandBuilder
type SqlCommandBuilder = class
inherit Component
type SqlCommandBuilder = class
inherit DbCommandBuilder
Public NotInheritable Class SqlCommandBuilder
Inherits Component
Public NotInheritable Class SqlCommandBuilder
Inherits DbCommandBuilder
- Devralma
- Devralma
Örnekler
Aşağıdaki örnekte, veri kaynağından SqlCommandsatır seçmek için ile birlikte SqlDataAdapter ve SqlConnectionkullanılır. Örnek bir bağlantı dizesi, Transact-SQL SELECT deyimi olan bir sorgu dizesi ve veritabanı tablosunun adı olan bir dize geçirilir. Örnek daha sonra bir SqlCommandBuilderoluşturur.
public static DataSet SelectSqlRows(string connectionString,
string queryString, string tableName)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(queryString, connection);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
connection.Open();
DataSet dataSet = new DataSet();
adapter.Fill(dataSet, tableName);
//code to modify data in DataSet here
builder.GetUpdateCommand();
//Without the SqlCommandBuilder this line would fail
adapter.Update(dataSet, tableName);
return dataSet;
}
}
Private Function SelectSqlRows(ByVal connectionString As String, _
ByVal queryString As String, ByVal tableName As String) As DataSet
Using connection As New SqlConnection(connectionString)
Dim adapter As New SqlDataAdapter()
adapter.SelectCommand = New SqlCommand(queryString, connection)
Dim builder As New SqlCommandBuilder(adapter)
connection.Open()
Dim dataSet As New DataSet()
adapter.Fill(dataSet, tableName)
' Code to modify data in DataSet here
builder.GetUpdateCommand()
' Without the SqlCommandBuilder this line would fail.
adapter.Update(dataSet, tableName)
Return dataSet
End Using
End Function
Açıklamalar
, SqlDataAdapter 'de yapılan değişiklikleri SQL Server'ın ilişkili örneğiyle mutabık hale getirmek için DataSet gereken Transact-SQL deyimlerini otomatik olarak oluşturmaz. Ancak özelliğini ayarlarsanız SelectCommandSqlDataAdaptertek tablolu güncelleştirmeler için otomatik olarak Transact-SQL deyimleri oluşturmak üzere bir SqlCommandBuilder nesne oluşturabilirsiniz. Ardından, ayarlamadığınız ek Transact-SQL deyimleri tarafından SqlCommandBuilderoluşturulur.
özelliği SqlCommandBuilder her ayarlandığında DataAdapter olaylar için RowUpdating kendisini dinleyici olarak kaydeder. Bir kerede yalnızca bir SqlDataAdapter nesneyi veya SqlCommandBuilder nesneyi birbiriyle ilişkilendirebilirsiniz.
INSERT, UPDATE veya DELETE deyimleri oluşturmak için, SqlCommandBuilder gerekli bir meta veri kümesini otomatik olarak almak için özelliğini kullanır SelectCommand . Meta veriler alındıktan sonra değerini değiştirirseniz SelectCommand (örneğin, ilk güncelleştirmeden sonra) meta verileri güncelleştirmek için yöntemini çağırmalısınız RefreshSchema .
ayrıca SelectCommand en az bir birincil anahtar veya benzersiz sütun döndürmelidir. Hiçbiri yoksa, bir InvalidOperation özel durumu oluşturulur ve komutlar oluşturulmaz.
, SqlCommandBuilder tarafından başvuruda bulunan SelectCommandConnection, CommandTimeoutve Transaction özelliklerini de kullanır. Kullanıcı, bu özelliklerden biri veya daha fazlası değiştirilirse veya kendisi değiştirilirse SelectCommand çağırmalıdırRefreshSchema. InsertCommandAksi takdirde , UpdateCommandve DeleteCommand özellikleri önceki değerlerini korur.
çağrısı Disposeyaparsanız , SqlCommandBuilder ile ilişkilendirilmez SqlDataAdapterve oluşturulan komutlar artık kullanılmaz.
Oluşturucular
| Name | Description |
|---|---|
| SqlCommandBuilder() |
SqlCommandBuilder sınıfının yeni bir örneğini başlatır. |
| SqlCommandBuilder(SqlDataAdapter) |
sınıfın SqlCommandBuilder yeni bir örneğini ilişkili SqlDataAdapter nesneyle başlatır. |
Özellikler
| Name | Description |
|---|---|
| CanRaiseEvents |
Bileşenin olay oluşturup oluşturamayacağını belirten bir değer alır. (Devralındığı yer: Component) |
| CatalogLocation |
Sınıfının bir örneği SqlCommandBuilder için öğesini CatalogLocation alır veya ayarlar. |
| CatalogSeparator |
Sınıfının bir örneği için katalog ayırıcısı olarak kullanılan bir dizeyi SqlCommandBuilder alır veya ayarlar. |
| ConflictOption |
ConflictOption tarafından DbCommandBuilderhangilerinin kullanılacağını belirtir. (Devralındığı yer: DbCommandBuilder) |
| Container |
öğesini IContainer içeren öğesini Componentalır. (Devralındığı yer: Component) |
| DataAdapter |
Transact-SQL deyimlerinin otomatik olarak oluşturulduğu nesneyi SqlDataAdapter alır veya ayarlar. |
| DesignMode |
öğesinin şu anda tasarım modunda olup olmadığını Component gösteren bir değer alır. (Devralındığı yer: Component) |
| Events |
Bu Componentöğesine eklenen olay işleyicilerinin listesini alır. (Devralındığı yer: Component) |
| QuotePrefix |
Adları boşluk veya ayrılmış belirteç gibi karakterler içeren tablolar veya sütunlar gibi SQL Server veritabanı nesnelerini belirtirken kullanılacak başlangıç karakterini veya karakterleri alır veya ayarlar. |
| QuoteSuffix |
Adları boşluk veya ayrılmış belirteç gibi karakterler içeren tablolar veya sütunlar gibi SQL Server veritabanı nesnelerini belirtirken kullanılacak bitiş karakterini veya karakterleri alır veya ayarlar. |
| SchemaSeparator |
Şema tanımlayıcısı ile diğer tanımlayıcılar arasında ayırıcı için kullanılacak karakteri alır veya ayarlar. |
| SetAllValues |
Bir update deyimindeki tüm sütun değerlerinin eklenip eklenmeyeceğini veya yalnızca değiştirilen değerlerin dahil edilip edilmeyeceğini belirtir. (Devralındığı yer: DbCommandBuilder) |
| Site |
öğesini alır veya ayarlar ISiteComponent. (Devralındığı yer: Component) |
Yöntemler
| Name | Description |
|---|---|
| ApplyParameterInfo(DbParameter, DataRow, StatementType, Boolean) |
Sınıfının sağlayıcı uygulamasının DbCommandBuilder ek parametre özelliklerini işlemesine izin verir. (Devralındığı yer: DbCommandBuilder) |
| CreateObjRef(Type) |
Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur. (Devralındığı yer: MarshalByRefObject) |
| DeriveParameters(SqlCommand) |
içinde SqlCommand belirtilen saklı yordamdan parametre bilgilerini alır ve belirtilen SqlCommand nesnenin koleksiyonunu doldururParameters. |
| Dispose() |
tarafından Componentkullanılan tüm kaynakları serbest bırakır. (Devralındığı yer: Component) |
| Dispose(Boolean) |
tarafından Component kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları serbest bırakır. (Devralındığı yer: Component) |
| Dispose(Boolean) |
tarafından DbCommandBuilder kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları serbest bırakır. (Devralındığı yer: DbCommandBuilder) |
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetDeleteCommand() |
Veritabanında silme işlemleri gerçekleştirmek için gereken otomatik olarak oluşturulan SqlCommand nesneyi alır. |
| GetDeleteCommand(Boolean) |
Veritabanında silme işlemleri gerçekleştirmek için gereken otomatik olarak oluşturulan SqlCommand nesneyi alır. |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetInsertCommand() |
Veritabanında eklemeleri gerçekleştirmek için gereken otomatik olarak oluşturulan SqlCommand nesneyi alır. |
| GetInsertCommand(Boolean) |
Veritabanında eklemeleri gerçekleştirmek için gereken otomatik olarak oluşturulan SqlCommand nesneyi alır. |
| GetLifetimeService() |
Geçersiz.
Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır. (Devralındığı yer: MarshalByRefObject) |
| GetParameterName(Int32) |
Belirtilen parametrenin adını biçiminde |
| GetParameterName(String) |
Kısmi parametre adı verilen tam parametre adını döndürür. (Devralındığı yer: DbCommandBuilder) |
| GetParameterPlaceholder(Int32) |
İlişkili SQL deyimindeki parametresi için yer tutucuyu döndürür. (Devralındığı yer: DbCommandBuilder) |
| GetSchemaTable(DbCommand) |
için DbCommandBuilderşema tablosunu döndürür. (Devralındığı yer: DbCommandBuilder) |
| GetService(Type) |
veya Componenttarafından Container sağlanan bir hizmeti temsil eden bir nesnesi döndürür. (Devralındığı yer: Component) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| GetUpdateCommand() |
Veritabanında güncelleştirmeleri gerçekleştirmek için gereken otomatik olarak oluşturulan SqlCommand nesneyi alır. |
| GetUpdateCommand(Boolean) |
Veritabanında güncelleştirmeleri gerçekleştirmek için gereken otomatik olarak oluşturulan SqlCommand nesneyi alır. |
| InitializeCommand(DbCommand) |
üzerindeki DbCommand, Transaction, CommandTypeve UpdateRowSource özelliklerini sıfırlarCommandTimeout. (Devralındığı yer: DbCommandBuilder) |
| InitializeLifetimeService() |
Geçersiz.
Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır. (Devralındığı yer: MarshalByRefObject) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| MemberwiseClone(Boolean) |
Geçerli MarshalByRefObject nesnenin sığ bir kopyasını oluşturur. (Devralındığı yer: MarshalByRefObject) |
| QuoteIdentifier(String) |
Doğru katalog örneğinde tırnak içine alınmamış bir tanımlayıcı verildiğinde, bu tanımlayıcının doğru tırnak içine alınmış biçimini döndürür. Bu, tanımlayıcıdaki ekli tırnakların doğru şekilde kaçmasını içerir. |
| RefreshSchema() |
Bu komut oluşturucuyla ilişkili komutları temizler. |
| RefreshSchema() |
Bu DbCommandBuilderile ilişkili komutları temizler. (Devralındığı yer: DbCommandBuilder) |
| RowUpdatingHandler(RowUpdatingEventArgs) |
Olay için bir olay işleyicisi RowUpdating ekler. (Devralındığı yer: DbCommandBuilder) |
| SetRowUpdatingHandler(DbDataAdapter) |
DbCommandBuilder olayını işlemek RowUpdating için DbDataAdapteröğesini kaydeder. (Devralındığı yer: DbCommandBuilder) |
| ToString() |
Varsa, adını Stringiçeren bir Component döndürür. Bu yöntem geçersiz kılınmamalıdır. (Devralındığı yer: Component) |
| UnquoteIdentifier(String) |
Tırnak içine alınmış bir tanımlayıcı verildiğinde, bu tanımlayıcının doğru ve tırnak içine alınmamış biçimini döndürür. Bu, tanımlayıcıdaki ekli tırnakların doğru şekilde özetini kaldırmayı içerir. |
Ekinlikler
| Name | Description |
|---|---|
| Disposed |
Bileşen yöntemine Dispose() yapılan bir çağrıyla atıldığında gerçekleşir. (Devralındığı yer: Component) |