Страница: 1 | 2 |
Вопрос: VB 6, Элемент DataGrid как удалить выбранные строк
Добавлено: 30.11.05 10:40
Автор вопроса: z3f
есть база на mssql 2000 sp3
в ней есть таблица.
на форме есть присоедененный datagrid который отображает таблицу целиком.
как удалить из базы выбранный элемент?
Нужен кусок любого кода как это сделать...
или ссылки на помощь по работе с datagrid...
в работе с VB 6 я новичок потому и не знаю как работать...
Ответы
Всего ответов: 26
Номер ответа: 1
Автор ответа:
AndreyMp
ICQ: 237822510
Вопросов: 28
Ответов: 1182
Профиль | | #1
Добавлено: 30.11.05 10:48
Удаляете из таблицы в базе. К примеру SQL запросом. Datagrid возможно после этого надо будет Refresh.
Номер ответа: 2
Автор ответа:
z3f
Вопросов: 3
Ответов: 10
Профиль | | #2
Добавлено: 30.11.05 11:00
А поконкретнее?
дело в том что мне нужно в datagrid определить запись и извлечь из нне данные...
то есть каким образом -
человек щелкает в строке datagrid и после этого жмет кнопку delete...
то есть задача такая - определить на какой записи в данный момент щелкнул чел в datagrid?
как только я смогу определить какая запись в данный момент является текущей - я смогу не только ее удалить (не важно запросом или другим спосообом) но и каким то образом ее изменить и так далее.
так какая функция отвечает за выбранную в datagrid строку или что то типа mydbgrid.selectedrows или что-то в этом духе =(
Номер ответа: 3
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #3
Добавлено: 30.11.05 13:36
Номер ответа: 4
Автор ответа:
z3f
Вопросов: 3
Ответов: 10
Профиль | | #4
Добавлено: 30.11.05 14:12
Дык это то я знаю - проблема в том что мне нужно в дальнейшем работать с гридом...
то есть мне нужно допустим текущую запись(или запись по которой щелкнул пользователь) редактировать и так далее.
то есть просто удалить перемнную adAffectCurrent - не интересно...
Номер ответа: 5
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #5
Добавлено: 30.11.05 16:58
Не вижу проблему до сих пор.
Текущая запись в rst.
msgbox rst!ID, к примеру.
Номер ответа: 6
Автор ответа:
v00j00
ICQ: 249622331
Вопросов: 0
Ответов: 4
Профиль | | #6
Добавлено: 01.12.05 08:17
пользователь щелкнул по строке
текущая запись будет:
Adodc1.Recordset
Номер ответа: 7
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #7
Добавлено: 01.12.05 09:39
Неужели?
А мне всегда казалось, что рекордсет хранит все записи.
Номер ответа: 8
Автор ответа:
v00j00
ICQ: 249622331
Вопросов: 0
Ответов: 4
Профиль | | #8
Добавлено: 01.12.05 10:44
Да он хранит все записи
Но если щелкуть на любую из строк в DataGrid, то он выведит именно эту запись
Номер ответа: 9
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #9
Добавлено: 01.12.05 16:52
Тогда в чём ценность ответа № 6 ввиду наличия ответа № 5?
Номер ответа: 10
Автор ответа:
v00j00
ICQ: 249622331
Вопросов: 0
Ответов: 4
Профиль | | #10
Добавлено: 02.12.05 08:03
В том что нужно брать именно Adodc1.Recordset, а не какой-нибудь другой.
Номер ответа: 11
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #11
Добавлено: 02.12.05 09:12
А откуда такая уверенность в том, что идёт работа через контрол ADODC?
Я, например, никогда не использую ADODC, ибо лажа.
Номер ответа: 12
Автор ответа:
z3f
Вопросов: 3
Ответов: 10
Профиль | | #12
Добавлено: 06.12.05 10:42
Source:
msgbox rst!ID, vbOkonly
Error:
Run-Time Error '3665'
Item can't be found in the collection corresponding to the requested name or ordinal
И что после этого делать?
А задача теперь сведась к следующему
есть DBGRID в нем нарисована база.
Нужно удалить текущую выделенную строчку и из грида и из базы.
из базы прийлдется делать через ж..у.
Ж..а выглядит так
нужно удаляемую строчку ввести в отделный рекордсет...
сделать так
rsDelete = rsCurrent.Delete AdAffectCurrent
не получается...
как ввести тукущую строчку в отдельный рекордсет?
Номер ответа: 13
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #13
Добавлено: 06.12.05 16:52
Трудно сказать.
Если я показываю, как вычисляется 2+2, а ты потом спрашиваешь, как вычислить 3+3, то я не знаю, что сказать.
ID - имя поля.
У тебя его нет.
Подставь то, которое у тебя есть и которое ты используешь для идентификации строки.
Зачем?
Номер ответа: 14
Автор ответа:
z3f
Вопросов: 3
Ответов: 10
Профиль | | #14
Добавлено: 06.12.05 18:50
так надо (к сожалению)...
и как это сделать?
может я совесм отупел - но имя какого поля?
откуда я возьму имя поля?
имя солбца? - дык оно мне не нужно.
имя строки? то есть мне по rs.fields(0) можно организовать без всяких проблем =(
Номер ответа: 15
Автор ответа:
AndreyMp
ICQ: 237822510
Вопросов: 28
Ответов: 1182
Профиль | | #15
Добавлено: 06.12.05 22:23
Гы... Теперь про 1+1 раскажи. ))