Podem utilitzar la transacció en un procediment emmagatzemat?
Podem utilitzar la transacció en un procediment emmagatzemat?

Vídeo: Podem utilitzar la transacció en un procediment emmagatzemat?

Vídeo: Podem utilitzar la transacció en un procediment emmagatzemat?
Vídeo: How To Manage Inventory In QuickBooks Online 2024, Abril
Anonim

Si nosaltres tenir més d'una sentència SQL en execució al fitxer procediment emmagatzemat i nosaltres Voleu revertir els canvis fets per qualsevol de les sentències SQL en cas que s'hagi produït un error a causa d'una de les sentències SQL, podem utilitzar la transacció al procediment emmagatzemat.

Així, els procediments emmagatzemats s'executen en una transacció?

Niu procediments emmagatzemats són executat en el transacció context de l'exterior procediment emmagatzemat . Aquesta és la configuració predeterminada. Proporciona el comportament predeterminat descrit anteriorment. És a dir, totes les sentències SQL en a s'executa el procediment emmagatzemat com a solter transacció bloc.

Al costat anterior, podem utilitzar commit en procediment? En general, procediments no hauria comprometre's . Si tu comprometre's dins d'un emmagatzemat procediment , esteu limitant la seva reutilització perquè una persona que truca que vol els canvis procediment fa que sigui part d'una transacció més gran no pot simplement trucar al procediment directament.

Respecte a això, podem utilitzar la transacció a la funció SQL?

1 Resposta. Aixo es perqué transaccions són innecessàries per sql -servidor funcions . Tanmateix, tu llauna canvi transacció nivell d'aïllament, per exemple, podeu utilitzar Pista NOLOCK per arribar a "llegir sense compromís" transacció nivell d'aïllament i llegir dades no compromeses d'altres transaccions.

Podem utilitzar transaccions imbricades en SQL si és així, llavors com?

SQL El servidor realment no és compatible transaccions imbricades . Només n'hi ha un transacció en un moment. Aquest transacció té un bàsic transacció imbricada comptador, @@TRANCOUNT. Cada inici consecutiu transacció increments el comptador per un, cada compromès transacció el redueix en un.

Recomanat: