В разных функция запрашиваю данные из БД
NpgsqlCommand cmd = new NpgsqlCommand();
cmd.Connection = db.con;
Complex[] spectr = new Complex[1024];
switch (n)
{
case 1:
cmd.CommandText = "SELECT v_ampl,v_freg FROM spectr_vpo1 Order by time desc LIMIT 1024";
break;
case 2:
cmd.CommandText = "SELECT v2,p2,o2,v2_time FROM vpo2 ORDER BY v2_time DESC LIMIT 1";
break;
case 3:
cmd.CommandText = "SELECT v3,p3,o3,v3_time FROM vpo3 ORDER BY v3_time DESC LIMIT 1";
break;
case 4:
cmd.CommandText = "SELECT v4,p4,o4,v4_time FROM vpo4 ORDER BY v4_time DESC LIMIT 1";
break;
case 5:
cmd.CommandText = "SELECT v5,p5,o5,v5_time FROM vpo5 ORDER BY v5_time DESC LIMIT 1";
break;
case 6:
cmd.CommandText = "SELECT v6,p6,o6,v6_time FROM vpo6 ORDER BY v6_time DESC LIMIT 1";
break;
case 7:
cmd.CommandText = "SELECT v7,p7,o7,v7_time FROM vpo7 ORDER BY v7_time DESC LIMIT 1";
break;
case 8:
cmd.CommandText = "SELECT v8,p8,o8,v8_time FROM vpo8 ORDER BY v8_time DESC LIMIT 1";
break;
}
using (NpgsqlDataReader reader_v_current = cmd.ExecuteReader())
{
int i = 0;
while (reader_v_current.Read())
{
try
{
spectr[i].Re = reader_v_current.GetDouble(0);
spectr[i].Im = reader_v_current.GetDouble(1);
}
catch { }
i++;
}
}
Вторая функция
NpgsqlCommand cmd = new NpgsqlCommand();
cmd.Connection = db.con;
//double[] skz = new double[3];
//DateTime time = Convert.ToDateTime("00:00:00");
switch (n)
{
case 1:
cmd.CommandText = "SELECT v1,p1,o1,v1_time FROM vpo1 ORDER BY v1_time DESC LIMIT 1";
break;
case 2:
cmd.CommandText = "SELECT v2,p2,o2,v2_time FROM vpo2 ORDER BY v2_time DESC LIMIT 1";
break;
case 3:
cmd.CommandText = "SELECT v3,p3,o3,v3_time FROM vpo3 ORDER BY v3_time DESC LIMIT 1";
break;
case 4:
cmd.CommandText = "SELECT v4,p4,o4,v4_time FROM vpo4 ORDER BY v4_time DESC LIMIT 1";
break;
case 5:
cmd.CommandText = "SELECT v5,p5,o5,v5_time FROM vpo5 ORDER BY v5_time DESC LIMIT 1";
break;
case 6:
cmd.CommandText = "SELECT v6,p6,o6,v6_time FROM vpo6 ORDER BY v6_time DESC LIMIT 1";
break;
case 7:
cmd.CommandText = "SELECT v7,p7,o7,v7_time FROM vpo7 ORDER BY v7_time DESC LIMIT 1";
break;
case 8:
cmd.CommandText = "SELECT v8,p8,o8,v8_time FROM vpo8 ORDER BY v8_time DESC LIMIT 1";
break;
}
using (NpgsqlDataReader reader_v_current = cmd.ExecuteReader())
{
while (reader_v_current.Read())
{
try
{
v = reader_v_current.GetDouble(0);
p = reader_v_current.GetDouble(1);
o = reader_v_current.GetDouble(2);
time = reader_v_current.GetDateTime(3);
}
catch { }
}
}
И вылетает исключение Npgsql.NpgsqlOperationInProgressException: "A command is already in progress: SELECT v_ampl,v_freg FROM spectr_vpo1 Order by time desc LIMIT 1024"
Может я не правильно работаю с данной библиотекой Подскажите пожалуйста как решить мою проблему Функции работают вызываются в разных формах
Скорее всего Вы пытаетесь выполнить второй запрос когда соединение ещё занято предыдущим.
По хорошему Вам нужно либо дождаться выполнения первого запроса либо распараллелить работу с БД.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
У меня есть таблица с элементами в unityМне надо зафиксировать свайп над элементом в таблице, и в процессе свайпа его передвигать
Имеется массив с timestamp-ми примерно с прошлого года (когда добавлялись пользователи)Надумала сделать статистику, но не пойму как можно день...