Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите с удалением строки в рекордсете / 8 сообщений из 8, страница 1 из 1
17.03.2008, 13:31
    #35195083
Klera
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с удалением строки в рекордсете
Есть рекордсет
rst.Open " select s_OTD.Otd_ID as [Иден-р отделения],
s_OTD.Otdelenie as [Отделение],
s_OTD.MRS_ID as [Иден-р МРС]
,s_MRS.MRS_ID, s_MRS.MRS as [МРС]
FROM s_OTD as s_OTD LEFT JOIN s_MRS as s_MRS ON s_OTD.MRS_ID=s_MRS.MRS_ID", conn, adOpenDynamic, adLockOptimistic

Set FOTD.DGOTD.DataSource = rst 'DGOTD -DataGrid

мне нужно при выборе строки в DataGrid и нажатии кнопки удалить -удалялась строка из таблицы
s_OTD, сейчас делаю rst.Delete adAffectCurrent
- удаляет но выдает ошибку, так как в рекордсете стоит LEFT JOIN
как правильно написать?
...
Рейтинг: 0 / 0
17.03.2008, 13:41
    #35195119
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с удалением строки в рекордсете
Ну правильно, АДО ведь не знает из какой таблицы удалять.
Так что напишите свой COmmand и через него удаляйте.
...
Рейтинг: 0 / 0
17.03.2008, 13:42
    #35195120
Помогите с удалением строки в рекордсете
KleraЕсть рекордсет
rst.Open " select s_OTD.Otd_ID as [Иден-р отделения],
s_OTD.Otdelenie as [Отделение],
s_OTD.MRS_ID as [Иден-р МРС]
,s_MRS.MRS_ID, s_MRS.MRS as [МРС]
FROM s_OTD as s_OTD LEFT JOIN s_MRS as s_MRS ON s_OTD.MRS_ID=s_MRS.MRS_ID", conn, adOpenDynamic, adLockOptimistic

Set FOTD.DGOTD.DataSource = rst 'DGOTD -DataGrid

мне нужно при выборе строки в DataGrid и нажатии кнопки удалить -удалялась строка из таблицы
s_OTD, сейчас делаю rst.Delete adAffectCurrent
- удаляет но выдает ошибку, так как в рекордсете стоит LEFT JOIN
как правильно написать?

Попробуй это.
If MsgBox("Вы уверены?", vbYesNo, "Предупреждение") = vbYes Then
Data1.Recordset.Delete
'Data1.Refresh
MsgBox "Информация принадлежащая данному абитуриенту, также была удалёна из Базы!", vbInformation, "Сообщение"
If Data1.Recordset.AbsolutePosition < Data1.Recordset.RecordCount - 1 Then
Data1.Recordset.MoveNext
Else
Data1.Recordset.MoveLast
End If
End If
...
Рейтинг: 0 / 0
17.03.2008, 13:43
    #35195131
Помогите с удалением строки в рекордсете
Даулет Утепов KleraЕсть рекордсет
rst.Open " select s_OTD.Otd_ID as [Иден-р отделения],
s_OTD.Otdelenie as [Отделение],
s_OTD.MRS_ID as [Иден-р МРС]
,s_MRS.MRS_ID, s_MRS.MRS as [МРС]
FROM s_OTD as s_OTD LEFT JOIN s_MRS as s_MRS ON s_OTD.MRS_ID=s_MRS.MRS_ID", conn, adOpenDynamic, adLockOptimistic

Set FOTD.DGOTD.DataSource = rst 'DGOTD -DataGrid

мне нужно при выборе строки в DataGrid и нажатии кнопки удалить -удалялась строка из таблицы
s_OTD, сейчас делаю rst.Delete adAffectCurrent
- удаляет но выдает ошибку, так как в рекордсете стоит LEFT JOIN
как правильно написать?

Попробуй это.
If MsgBox("Вы уверены?", vbYesNo, "Предупреждение") = vbYes Then
Data1.Recordset.Delete
'Data1.Refresh
MsgBox "Информация принадлежащая данному абитуриенту, также была удалёна из Базы!", vbInformation, "Сообщение"
If Data1.Recordset.AbsolutePosition < Data1.Recordset.RecordCount - 1 Then
Data1.Recordset.MoveNext
Else
Data1.Recordset.MoveLast
End If
End If
только вместо data ado поставь
...
Рейтинг: 0 / 0
17.03.2008, 13:45
    #35195141
Klera
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с удалением строки в рекордсете
big-dukeНу правильно, АДО ведь не знает из какой таблицы удалять.
Так что напишите свой COmmand и через него удаляйте.


так я вот и не знаю как написать
...
Рейтинг: 0 / 0
17.03.2008, 14:07
    #35195243
Klera
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с удалением строки в рекордсете
Даулет Утепов так не работает
...
Рейтинг: 0 / 0
17.03.2008, 14:23
    #35195320
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с удалением строки в рекордсете
'сначала из дочерней удаляйте по конкретному ID
cn.Execute "DELETE FROM s_MRS WHERE MRS_ID=" & MRS_ID
'потом из главной таблицы
cn.Execute "DELETE FROM s_OTD WHERE MRS_ID=" & MRS_ID
...
Рейтинг: 0 / 0
17.03.2008, 15:08
    #35195526
Klera
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с удалением строки в рекордсете
Konst_One'сначала из дочерней удаляйте по конкретному ID
cn.Execute "DELETE FROM s_MRS WHERE MRS_ID=" & MRS_ID
'потом из главной таблицы
cn.Execute "DELETE FROM s_OTD WHERE MRS_ID=" & MRS_ID

спасибо
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите с удалением строки в рекордсете / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]