Hola!, como están!, como los trata la vida!
Hoy quería comentarles algo que seguramente les resulte útil, mas que nada a los desarrolladores, que posiblemente no estén tan familiarizados con el Log transaccional de la base de datos.
Un error muy común en las transacciones que modifican o agregan datos sobre las tablas de una base, es el siguiente:
SQLState = 37000, NativeError = 9002
Error = [Microsoft][ODBC SQL Server Driver][SQL Server]The log file for database
'mibase’ is full. Back up the transaction log for the database to free up some log space.
Si están realizando un ‘delete’ sobre tablas sin condición o filtro, en vez de utilizar esta sentencia deben realizar un ‘truncate table’, pues esta sentencia no escribe el transaction log de la base, por ende, no les traera aparejado el problema anterior.
En cambio con las sentencias insert, update traten de utilizar, conjuntos registros (recordset) mas pequeños trabajando via codigo como VB.net con transacciones explicitas, por ej:OleDbConnection.BeginTransaction (), o si bien puro SQL con commit mas seguidos y con funciones del tipo rowcount (ver book's de SQL Server: set rowcount).
Y como siempre…, abrazo virtual para todos.
JuanPL
Link's relacionados:
http://www.todosql.com/blog/200703/particularidad-entre-las-sentencias-t...