Az e módszer (adatkészlet) (n)
A frissítés soronként történik. Minden beillesztett, módosított és törölt sor esetén a Frissítési módszer határozza meg, hogy milyen módosítás történt (beillesztés, frissítés vagy törlés). A Beszúrás módosítása típusától függően. Frissítés vagy Törlés A parancssablon végrehajtásra kerül, hogy a megváltozott karakterláncot az adatforráshoz továbbítsa. Amikor egy alkalmazás felhívja a frissítési módot, a DataAdapter ellenőrzi a RowState tulajdonságot, és minden egyes sorra iteratív módon végrehajtja a szükséges INSERT, UPDATE vagy DELETE utasításokat a DataSet konfigurált indexeinek sorrendjében. Például a Frissítés végrehajthatja a DELETE utasítást, majd egy INSERT utasítás, majd egy másik DELETE utasítás, a DataTable sorainak sorrendje miatt.
Meg kell jegyezni, hogy ezeket az utasításokat nem kötegelt eljárásként hajtják végre. Minden sor külön frissül. Egy alkalmazás felhívhatja a GetChanges módszert olyan esetekben, amikor szükséges az utasítástípusok sorrendjének vezérlése (például a frissítés előtt beillesztés). További információ: Adatforrások frissítése DataAdapter objektumokkal.
Ha nincs megadva INSERT, UPDATE vagy DELETE utasítás, akkor a Frissítési módszer kivételt ad. Az SqlCommandBuilder vagy az OleDbCommandBuilder létrehozásával azonban létrehozhat SQL utasításokat az egyes frissítésekhez, ha megadja a .NET-keretrendszer-adatszolgáltató SelectCommand Properties tulajdonságait. Ezután létrehozza az összes olyan SQL utasítást, amelyeket a CommandBuilder nem tartalmaz. Ez a létrehozási logika a DataSet-ben jelen lévő kulcs oszlopra vonatkozó információkat igényel. További információ: CommandBuilders Object paranccsal történő létrehozása.
Frissítés A módszer a frissítés végrehajtása előtt behívja a sorokat az első mérkőzésben szereplő táblázatból. Frissítés Ezután frissíti a stringet a UpdatedRowSource Properties értékével. Minden további vonalat figyelmen kívül hagynak.
Az adatok visszahelyezése a DataSetbe. OnRowUpdated események, amelyek lehetővé teszik a felhasználó számára a jóváhagyott DataSet-karakterlánc és a parancs által visszaadott kimeneti paraméterek ellenőrzését. A sor sikeres frissítése után a sor módosításai elfogadottak.
Frissítés használata esetén. a végrehajtás sorrendje így néz ki:
A DataRow értékei átkerülnek a paraméterértékekre.
Ha a parancs értéke FirstReturnedRecord. Az első visszaadott eredmény a DataRow-ba kerül.
Ha vannak kimeneti paraméterek, azok a DataRow-ba kerülnek.
A DataAdapter-hez társított parancsok általában hozzá vannak rendelve paraméterekkel. A paramétereket az adatszolgáltató SourceColumn és SourceVersion tulajdonságai segítségével az aktuális sorra kell leképezni a Parameter osztály futtatásával. A SourceColumn a DataTable oszlopra hivatkozik, a DataAdapter hivatkozások az aktuális sor paraméterértékének megszerzéséhez.
A SourceColumn a nem leképezett oszlop nevét jelenti a táblázat leképezések alkalmazása előtt. Ha a SourceColumn nem létező oszlopra hivatkozik, a végrehajtott műveletek az alábbi MissingMappingAction értékek egyikétől függnek.
SourceColumn A tulajdonságot a kimeneti értékek vagy a bemeneti / kimeneti paraméterek DataSetre történő leképezésére is használják. Kivételt hoznak, ha egy nem létező oszlopra utal.
A .NET-adatszolgáltató forrástulajdonság-tulajdonságai A Parameter osztály határozza meg, hogy használják-e a forrás, az aktuális vagy a javasolt oszlopértékeket. Ezt a funkciót gyakran használják arra, hogy az eredeti értékeket az UPDATE utasítás WHERE záradékába tegye, hogy megvizsgálja az optimista konkurencia megsértését.
Az AcceptChanges módszer vagy az AcceptChanges módszer meghívása minden módosítást elvégez a DataSet vagy az Adattáblán. Ha a fenti módszerek valamelyikét a frissítési módszer megnevezése előtt hívják, akkor a módosítások nem lesznek elkötelezve, ha a Frissítési módszer felhívásra kerül, ha az AcceptChanges vagy az AcceptChanges óta nem történt módosítás.
Ha a sor frissítése során hiba történik, kivétellel dobják a frissítést. A frissítési művelet folytatásának folytatása kivétel nélkül hiba észlelésekor állítsa a ContinueUpdateOnError értéket true értékre, mielőtt a frissítési módot meghívná. A DataAdapter objektum RowUpdated eseményén belül egy sorra is válaszolhat. A frissítési művelet folytatása a RowUpdated eseménykészletben kivétel kivételével, a RowUpdatedEventArgs folytatáshoz tartozó Állapot tulajdonsága.
Minden olyan oszlop esetében, amely a frissítés adatforrásával van felosztva. Add InsertCommand paramétert. UpdateCommand. vagy DeleteCommand. SourceColumn Paraméter tulajdonságok oszlopnevet kell rendelni. Ez a paraméter azt adja meg, hogy a paraméter értéke nincs manuálisan beállítva, hanem a feldolgozás alatt álló oszlopban lévő pillanatnyi oszlopból származik.