Здравствуйте. Пишу такой код:
NpgsqlConnection DBconnection = _dbconnection;
NpgsqlCommand DBcommand_1 = DBconnection.CreateCommand();
NpgsqlCommand DBcommand_2 = DBconnection.CreateCommand();
NpgsqlDataReader DataReader_1, DataReader_2;
DBcommand_1.CommandText = "SELECT Что-то там FROM Откуда-то";
DataReader_1 = DBcommand_1.ExecuteReader();
int fields = DataReader_1.FieldCount;
string[] product;
string code;
while (DataReader_1.Read())
{
product = new string[fields + 3];
product[0] = DataReader_1.GetInt32(0).ToString();
code = DataReader_1.GetInt32(1).ToString();
DBcommand_2.CommandText = "SELECT Что-то там FROM Откуда-то WHERE Код = " + code;
DataReader_2 = DBcommand_2.ExecuteReader();
...
...
...
}
Во время выполнения второго запроса выдается ошибка: "There is already an open DataReader associated with this Command which must be closed first." Почему так, разве DBcommand_1 и DBcommand_2 как-то связаны? Если вместо Npgsql использовать OleDb, такой ошибки не возникает.
Попробуй в строчку подключения прописать MultipleActiveResultSets=true
Если верить вот этому ответу, то это связано с тем, что ты в рамках одного соединения выполняешь итерацию DataReader'ом
и еще один какой-то запрос.
Если то, что выше не поможет, то запуск запроса в отдельном соединении точно должен помочь.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Доброго времени суток! У меня в качестве ListViewItemTemplate является RichTextBox с забинденным Document'ом
Всем доброго времени сутокПомогите разобраться, написал приложение которое производит дозапись бинарного файла, но дозапись только в 101 значение,...
Всем приветНачал писать игру и пришел момент когда надо перемещаться персонажем