¿Cómo deciden ustedes que debería empaquetar el sql en una transacción?Cómo decidir utilizar las transacciones de la base de datos
Por favor, arroja algo de luz sobre esto.
¡Salud!
¿Cómo deciden ustedes que debería empaquetar el sql en una transacción?Cómo decidir utilizar las transacciones de la base de datos
Por favor, arroja algo de luz sobre esto.
¡Salud!
Se debe utilizar una transacción cuando necesite que un conjunto de cambios se procese completamente para considerar que la operación es completa y válida. En otras palabras, si solo una parte se ejecuta con éxito, ¿dará como resultado datos incompletos o no válidos almacenados en su base de datos?
Por ejemplo, si tiene una inserción seguida de una actualización, ¿qué sucede si la inserción tiene éxito y la actualización falla? Si eso daría como resultado datos incompletos (en este caso, un registro huérfano), debe envolver las dos declaraciones en una transacción para que se completen como un "conjunto".
"se utilizará cuando necesite que se procesen un conjunto de cambios" Creo que el segundo "necesita" es innecesario. –
si tiene más de una declaración de modificación de datos para ejecutar una tarea, todo debe estar dentro de una transacción.
De esta manera, si la primera es exitosa, pero cualquiera de las siguientes tiene un error, puede deshacer (deshacer) todo como si nunca se hubiera hecho nada.
Siempre que no te guste, si parte de la operación puede completarse y parte de ella no.
Si está ejecutando dos o más declaraciones que espera que sean funcionalmente atómicas, debe envolverlas en una transacción.
Cada vez que quiera bloquear su base de datos y potencialmente bloquear su aplicación de producción, siempre que quiera ensuciar su aplicación con pesadillas ocultas de escalabilidad, siga adelante y cree una transacción. Hazlo grande, lento y coloca un lazo dentro.
En serio, ninguna de las respuestas anteriores reconoce la disyuntiva y los posibles problemas que conlleva el uso intensivo de las transacciones. Tenga cuidado, y considere el riesgo/recompensa cada vez.
Ebay no los usa en absoluto. Estoy seguro de que hay muchos otros.
http://www.infoq.com/interviews/dan-pritchett-ebay-architecture
Siempre fue interesante para mí ver enfoques sobre cómo reemplazar transacciones con otras técnicas. –
Siempre que cualquier operación corresponda a ACID (atomicidad , consistencia, Aislamiento, Durabilidad) criterios que debe utilizar transacciones
Lea este article
@Lance Roberts ¿De dónde vino tsql? esto puede aplicarse a cualquier base de datos. OP nunca dijo servidor sql. –