Я пытаюсь использовать Систему. Данные. Библиотека Sqlite, и я следую, документация об оптимизации вставляет так, я скопировал этот код непосредственно из документации:
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();
}
Теперь, я инициализирую меня соединение прямо перед этим при помощи
SqlConnection myconnection = new SqlConnection("Data Source=blah");
У меня есть База данных, названная вздором с корректными таблицами и значениями.
Проблема состоит в том, когда я выполняю этот код, она говорит, что "Операция не допустима из-за текущего состояния объекта"
Я попытался менять код несколько раз и это неподвижные точки к BeginTransaction. Что дает?
Возможно, вы объявили и создали экземпляр соединения, но открыли ли вы его?
Первое, что я бы попробовал, - это удалить данные о транзакции и посмотреть, действительно ли код работает - посмотрите, что это вам говорит ...
Мартин