0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 38

Крашит DataReader

21.11.2019, 16:12. Показов 2609. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Крашит программу через минут 15 использования
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
void tmr_Update_Tick(object sender, EventArgs e)
        {
            if (start_search == true)
            {
                string query = "SELECT group_id, wall_date, total_minutes FROM group_info ORDER BY ID";
 
                OleDbCommand command = new OleDbCommand(query, myConnection);
                OleDbDataReader reader = command.ExecuteReader();
 
                while (reader.Read())
                {
                    var unixEpoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
 
                    int startTimestamp = Convert.ToInt32(reader[1]);
 
                    var start = unixEpoch.AddSeconds(startTimestamp);
                    var end = DateTime.UtcNow;
 
                    var duration = end - start;
 
                    int minute = Convert.ToInt32(reader[2]);
                    
                    if (duration.TotalMinutes >= minute)
                    {
                        next_key(reader[0].ToString());
                    }
                }
            }
        }
Жалуется на эту строчку
C#
1
OleDbDataReader reader = command.ExecuteReader();
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.11.2019, 16:12
Ответы с готовыми решениями:

Асинхронный DataReader
Код работает, я так понимаю что он в новом потоке считывает по срочно записи и записывает в ListView. Тогда вопрос: Как оно может ...

Вопрос по DataReader
Люди, хелп... :( try { conn.Open(); SqlDataReader readit =...

DataReader пустой
Доброго времени суток! Есть хранимая процедура: USE GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO

11
 Аватар для Рядовой
1524 / 914 / 329
Регистрация: 17.05.2015
Сообщений: 3,438
21.11.2019, 16:17
LOOQI, молча крашит?
1
0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 38
21.11.2019, 16:20  [ТС]
System.Data.OleDb.OleDbException: "Неопознанная ошибка
Указан недопустимый объект, или объект более не задан."
0
800 / 583 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
21.11.2019, 16:26
.. Connection отваливается, может быть? .. где оно у вас открывается (и закрывается)?
0
0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 38
21.11.2019, 16:29  [ТС]
C#
1
2
3
public partial class MainForm : Form
    {
        public static string connectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=setting/groups.mdb;";
C#
1
2
3
4
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            myConnection.Close();
        }
0
800 / 583 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
21.11.2019, 16:48
... если это Connection (хотя, не факт), то можно проверять состояние, как здесь:
Check if SQL Connection is Open or Closed
0
0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 38
21.11.2019, 16:51  [ТС]
Это точно не Connection,
данный запрос находиться в таймере который вызывается каждую секунду, и программу крашит через минут 15-20, я ради интереса, сделал вызов каждые 100 мс, программу крашнуло через секунд 5-10, но не понимаю почему, и как решить данную проблему?
0
800 / 583 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
21.11.2019, 16:54
...ну, так ставьте таймер на 10 минут и перезапускайте ... но проверить, есть ли Connection (и если нет, выдать Exception с описанием) не помешает ... а так - что гадать, где что переполнилось или отвалилось?
0
0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 38
21.11.2019, 17:08  [ТС]
Состояние проверил, все хорошо, ошибка там же
C#
1
OleDbDataReader reader = command.ExecuteReader();
Только теперь дало немного больше времени
0
 Аватар для Cupko
658 / 595 / 171
Регистрация: 17.07.2012
Сообщений: 1,682
Записей в блоге: 1
21.11.2019, 17:30
Лучший ответ Сообщение было отмечено LOOQI как решение

Решение

Вероятно, где-то лочится файл открытым ридером, другим приложением или еще черт знает чем.
Сделайте по-нормальному, с Close(), с using и с новым экземпляром Connection на каждый тик, и посмотрите.
1
0 / 0 / 0
Регистрация: 13.11.2019
Сообщений: 38
21.11.2019, 17:53  [ТС]
да, я забыл отписать, что добавил Close и все заработало.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,575
21.11.2019, 18:39
Нужно не Close добавлять, а в using заворачивать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.11.2019, 18:39
Помогаю со студенческими работами здесь

DataReader не возвращает данные
Есть такой код: private void refreshWorkshop() { db_status(); SQLiteCommand workshop = new...

DataReader медленное чтение
Читаю данные с помощью DataReader из dbf файла - OleDbCommand commDbf = new OleDbCommand("select * from list.dbf", connExcel); ...

Правильный синтаксис DataReader
SQL = "SELECT COUNT(*) AS count FROM .. WHERE = '" + login.Trim() + "';"; using (SqlCommand command = new SqlCommand(SQL,...

Заполнить datareader из excell
при экспорте данных в excell все ячейки диапазона заполнены одним и тем же значением а уменя в БД список.Помогите пожалуйста...где...

метод HasRows в Datareader
public bool FindStuff(int IdStuff) { string value = Convert.ToString(IdStuff); string ComandLine =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru