![]() |
|
|
![]()
|
|
| dize |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 1.7.2009 Репутация: нет Всего: нет |
Бд access 2003, метод доступа ADO.
При выборе группы отображается ее состав
При удалении выполняется следующая процедура
При удалении подобным образом вылетает ошибка list index out of bonds(1). И выбранные данные не удаляются. --------------------
- Скажите, Большой Брат существует в том же смысле что и я? - Вы не существуете. |
||||
|
|||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 22 Всего: 122 |
кода удаления я не вижу... на какой строке вылетает ошибка? |
|||
|
||||
| dize |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 1.7.2009 Репутация: нет Всего: нет |
ADOQ_del.SQL.Text:='UPDATE Dengi SET Dengi.id_group=null WHERE Dengi.Kod_klienta="' + listbox3.Items[i] + '"';
--------------------
- Скажите, Большой Брат существует в том же смысле что и я? - Вы не существуете. |
|||
|
||||
| Frees |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2233 Регистрация: 2.12.2005 Где: Екатеринбург Репутация: 23 Всего: 54 |
чему равно i
-------------------- Кольцов Виктор Владимирович |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
Значит, элемента с данным индексом в листбоксе нет. И ADO тут ни при чём, равно как и БД. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 22 Всего: 122 |
итак:
1. Удаляют через запрос DELETE 2. итую наверно надо брать предыдущую (ты случаем не последний элемент берешь?)... т.е. I-1 |
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 8 Всего: 44 |
dize, поменяй местами порядок в процедуре удаления. Сначала запрос к БД, потом удаление из ListBox'а.
Так же ответь на вопрос из кода этого не видно. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
| Staruha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: нет Всего: 27 |
После удаления строки обязательно нужно так сделать -------------------- Возмездие настигнет |
|||
|
||||
| dize |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 1.7.2009 Репутация: нет Всего: нет |
Поспешил с ответом, если переставить с удаление из листбокса и update, при этом добавив i:=i-1, то работает, но через раз. При этом, если i:=i-1 не прописывать, удаляет без ошибок, но по подному элементу с начала, к тому же в случае создания группы и присвоения ей элементов, сразу удалять не хочет, а только после перезапуска программы. i равно количеству элементов в группе, выбираемой из combobox.
Это сообщение отредактировал(а) dize - 9.9.2009, 14:27 --------------------
- Скажите, Большой Брат существует в том же смысле что и я? - Вы не существуете. |
|||
|
||||
| Staruha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: нет Всего: 27 |
Всетаки должно быть что то вроде
тогда i-1 приобретает смысл -------------------- Возмездие настигнет |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Начнём с того, что удалять в цикле записи из таблицы нужно с конца.
|
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 8 Всего: 44 |
Добавлено через 1 минуту и 35 секунд Только если удалять нужно в запросе писать delete вместо update. -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 4 Всего: 146 |
а если выделений не одно .....?
Это сообщение отредактировал(а) Romikgy - 10.9.2009, 10:12 -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| Deniz |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1251 Регистрация: 16.10.2004 Где: Новый Уренгой Репутация: 8 Всего: 44 |
неужели трудно дописать?
Это сообщение отредактировал(а) Deniz - 10.9.2009, 12:30 -------------------- "Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с) |
|||
|
||||
| dize |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 1.7.2009 Репутация: нет Всего: нет |
Всем большое спасибо за помощь =)
--------------------
- Скажите, Большой Брат существует в том же смысле что и я? - Вы не существуете. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |