新聞中心
大家對(duì)與ADO.NET都有一定的了解,這里我們一起來(lái)看看關(guān)于ADO.NET DataAdapter參數(shù)的知識(shí)要領(lǐng)。DbDataAdapter具有四個(gè)用于從數(shù)據(jù)源檢索數(shù)據(jù)和更新數(shù)據(jù)源中數(shù)據(jù)的屬性:SelectCommand 屬性返回?cái)?shù)據(jù)源中的數(shù)據(jù);InsertCommand、UpdateCommand 和 DeleteCommand 屬性用于管理數(shù)據(jù)源中的更改。

為鎮(zhèn)康等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及鎮(zhèn)康網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、鎮(zhèn)康網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
調(diào)用 DataAdapter 的 Fill 方法之前必須設(shè)置 SelectCommand 屬性。在調(diào)用 DataAdapter 的 Update 方法之前必須設(shè)置 InsertCommand、UpdateCommand 或 DeleteCommand 屬性,具體取決于對(duì) DataTable 中的數(shù)據(jù)做了哪些更改。
例如,如果已添加行,在調(diào)用 Update 之前必須設(shè)置 InsertCommand。當(dāng) Update 正在處理已插入、已更新或已刪除的行時(shí),DataAdapter 將使用相應(yīng)的 Command 屬性來(lái)處理該操作。有關(guān)已修改行的當(dāng)前信息將通過(guò) Parameters 集合傳遞到 Command 對(duì)象。
當(dāng)更新數(shù)據(jù)源中的行時(shí),將調(diào)用 UPDATE 語(yǔ)句,該語(yǔ)句使用唯一標(biāo)識(shí)符來(lái)標(biāo)識(shí)該表中要更新的行。該唯一標(biāo)識(shí)符通常是主鍵字段的值。UPDATE 語(yǔ)句使用的參數(shù)既包含唯一標(biāo)識(shí)符又包含要更新的列和值,如下面的 Transact-SQL 語(yǔ)句所示。
- UPDATE Customers SET CompanyName = @CompanyName
- WHERE CustomerID = @CustomerID
ADO.NET DataAdapter參數(shù)占位符的語(yǔ)法取決于數(shù)據(jù)源。此示例顯示 SQL Server 數(shù)據(jù)源的占位符。使用問(wèn)號(hào) (?) 占位符代表 System.Data.OleDb 和 System.Data.Odbc 參數(shù)。
在此 Visual Basic 示例中,CompanyName 字段使用 CustomerID 等于 @CustomerID 參數(shù)值的行中的 @CompanyName 參數(shù)值來(lái)進(jìn)行更新。這些參數(shù)使用 SqlParameter 對(duì)象的 SourceColumn 屬性從已修改的行中檢索相關(guān)信息。下面是上一示例 UPDATE 語(yǔ)句的參數(shù)。代碼假定變量 adapter 表示有效的 SqlDataAdapter 對(duì)象。
- adapter.Parameters.Add( _
- "@CompanyName", SqlDbType.NChar, 15, "CompanyName")
- Dim parameter As SqlParameter = _
- adapter.UpdateCommand.Parameters.Add("@CustomerID", _
- SqlDbType.NChar, 5, "CustomerID")
- parameter.SourceVersion = DataRowVersion.Original
#T#Parameters 集合的 Add 方法接受參數(shù)的名稱、數(shù)據(jù)類型、大?。ㄈ绻m用于該類型)以及 DataTable 中的 SourceColumn 的名稱。請(qǐng)注意,@CustomerID 參數(shù)的 SourceVersion 設(shè)置為 Original。這樣可以保證,如果標(biāo)識(shí)列的值已經(jīng)在修改后的 DataRow 中被更改,就一定會(huì)更新數(shù)據(jù)源中的現(xiàn)有行。在這種情況下,Original 行值將匹配數(shù)據(jù)源中的當(dāng)前值,而 Current 行值將包含更新的值。沒(méi)有設(shè)置 @CompanyName 參數(shù)的 SourceVersion,而將使用默認(rèn)的 Current 行值。
對(duì)于 DataAdapter 的 Fill 操作和 DataReader 的 Get 方法,都將從 .NET Framework 數(shù)據(jù)提供程序中返回的類型來(lái)推斷 .NET Framework 類型。推斷的 .NET Framework 類型和 Microsoft SQL Server、OLE DB 和 ODBC 數(shù)據(jù)類型的訪問(wèn)器方法在 ADO.NET 中的數(shù)據(jù)類型映射 中說(shuō)明。
SourceColumn 和 SourceVersion 可以作為ADO.NET DataAdapter參數(shù)傳遞給 Parameter 構(gòu)造函數(shù),也可以設(shè)置為現(xiàn)有 Parameter 的屬性。SourceColumn 是將要從中檢索 Parameter 值的 DataRow 中的 DataColumn 的名稱。SourceVersion 指定 DataAdapter 用于檢索該值的 DataRow 版本。
當(dāng)前題目:巧學(xué)ADO.NETDataAdapter參數(shù)使用
地址分享:http://fisionsoft.com.cn/article/dhdsocd.html


咨詢
建站咨詢
