Secvențe Oracle

Furnizorul de date pentru .NET Framework pentru Oracle suportă preluarea valorilor cheie Oracle generate pe server după ce inserările sunt efectuate utilizând OracleDataAdapter.







SQL Server și Oracle suportă crearea automată a coloanelor cu incrementare automată care pot fi utilizate ca chei primare. Aceste valori sunt generate de server, pe măsură ce rândurile sunt adăugate în tabel. În SQL Server, proprietatea coloanei IDENTITY este setată, o secvență este creată în Oracle. Diferența dintre coloanele cu incrementare automată din SQL Server și șirurile Oracle este după cum urmează.

În SQL Server, coloana este marcată ca o coloană cu incrementare automată, iar SQL Server generează automat noi valori pentru aceasta atunci când introduce un rând nou.

Oracle creează o succesiune de valori noi pentru coloana tabelă, însă nu există o relație directă între această secvență și tabel sau coloană. Secvența Oracle este același obiect ca și tabela sau procedura stocată.

Când creați o secvență într-o bază de date Oracle, puteți defini valoarea inițială și valorile incrementale. Înainte de a introduce noi rânduri, puteți solicita, de asemenea, noi valori pentru secvență. Aceasta înseamnă că codul poate obține valori cheie pentru noi rânduri înainte de a le introduce în baza de date.







Pentru mai multe informații despre crearea coloanelor cu incrementare automată utilizând SQL Server și ADO.NET, consultați Obținerea ID-ului sau a valorilor automate ale numerelor și Crearea coloanelor de autoincrementare.

Următorul exemplu din C # arată primirea de noi valori de secvențe în baza de date Oracle. Exemplul se referă la o secvență din INSERT INTO interogare care este folosită pentru a introduce noi linii, iar randamentele de secventa generate de proprietate REVENIREA, mai întâi a apărut în Oracle10g. În exemplu, un set de noi rânduri este adăugat la DataTable utilizând caracteristica de incrementare automată ADO.NET pentru a genera valorile "placeholder" ale cheii primare. Rețineți că valoarea incrementului ADO.NET generată pentru noi rânduri este pur și simplu un "substituent". Aceasta înseamnă că baza de date însăși poate genera aceste valori în locul valorilor create de ADO.NET.

Înainte de a introduce rânduri în așteptare în baza de date, eșantionul afișează conținutul acestora pe ecran. Apoi, este creat un nou obiect OracleDataAdapter. iar proprietățile InsertCommand și UpdateBatchSize sunt valori atribuite. Exemplul utilizează aceeași logică pentru a returna valorile generate de server folosind parametrii de ieșire. După aceasta, exemplul introduce rânduri și afișează conținutul tabelului de date.







Articole similare

Trimiteți-le prietenilor: