Estoy tratando de utilizar la biblioteca System.Data.Sqlite, y estoy siguiendo la documentación acerca de la optimización insertos así que copiar el código directamente de la documentación:SQLite.Net Con BeginTransaction
using (SQLiteTransaction mytransaction = myconnection.BeginTransaction())
{
using (SQLiteCommand mycommand = new SQLiteCommand(myconnection))
{
SQLiteParameter myparam = new SQLiteParameter();
int n;
mycommand.CommandText = "INSERT INTO [MyTable] ([MyId]) VALUES(?)";
mycommand.Parameters.Add(myparam);
for (n = 0; n < 100000; n ++)
{
myparam.Value = n + 1;
mycommand.ExecuteNonQuery();
}
}
mytransaction.Commit();
}
ahora, lo cierto inicializar la conexión antes de que mediante el uso
SqlConnection myconnection = new SqlConnection("Data Source=blah");
tengo una base de datos llamada bla, con las tablas y los valores correctos.
El problema es cuando ejecuta este código, se dice "Operación no es válida debido al estado actual del objeto"
He intentado cambiar el código en torno a varias veces, y todavía apunta a BeginTransaction . ¿Lo que da?
Tengo algo de código en el que haved transacciones utilizadas con SQLite, pero no en mi máquina de trabajos. Si recuerdo, echaré un vistazo en mi máquina personal esta noche ... Martin. –
Soy un idiota, gracias. Sí, tenía todo funcionando antes de las transacciones, supongo que olvidé que tenía que abrir la conexión jaja. – cam
No hay problema ... –