Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
Nikolka
-
- Продвинутый пользователь
-
-
- Сообщения: 174
- Зарегистрирован: 01.01.2004 (Чт) 2:06
Nikolka » 16.03.2005 (Ср) 1:35
А если более точно - вот говорят, что в БД мона строки привязать к цифрам и мол, удаляешь строку, а все остальные цифры не смещаются. Т.е.:
(до удаления - записи)
1
2
3
4
5
(после удаления в простом режиме)
1
2
3
4
(после удаления как мне нужно)
1
2
3
5
Или хотябы как вааще удалить запись.
-
Cyrax
-
- Cyberninja
-
-
- Сообщения: 891
- Зарегистрирован: 25.04.2002 (Чт) 21:20
- Откуда: Magnitogorsk, Russia
-
Cyrax » 16.03.2005 (Ср) 8:09
вопрос, конечно, не в том форуме... ну да ладно.
лично я не буду давать готовых решений, так как автор вопроса, судя по самому вопросу, в вопросе совершенно не разбирается (извините за... ну вы поняли за что
).
я лучше дам ему пару-тройку ссылок для изучения:
Глава 16. Основы баз данных
Глава 17. Управление данными
Ты это ему расскажи. Я уже пять болтов отвинтил, и конца не видно... (озадаченно) А это в какую сторону тянуть? Ну-ка... Ага, этот был лишний, этот вообще не отсюда, и этот... Точно, два болта.
Welcome to IRC
-
Алексей К.
-
- Постоялец
-
-
- Сообщения: 419
- Зарегистрирован: 12.05.2004 (Ср) 9:41
- Откуда: Ульяновск
Алексей К. » 16.03.2005 (Ср) 10:58
Можно удалить через запрос (пример с DAO для access).
- Код: Выделить всё
set db=opendatabase("c:\путь_к_базе\имя_базы.mdb",false)
запрос="delete from имя_таблицы where имя_поля=4;"
set rs=db.openrecordset(запрос)
rs.close
db.close
-
alibek
-
- Большой Человек
-
-
- Сообщения: 14205
- Зарегистрирован: 19.04.2002 (Пт) 11:40
- Откуда: Russia
alibek » 16.03.2005 (Ср) 11:14
Зачем DELETE в рекордсет? db.Execute "delete ..."
Lasciate ogni speranza, voi ch'entrate.
-
Алексей К.
-
- Постоялец
-
-
- Сообщения: 419
- Зарегистрирован: 12.05.2004 (Ср) 9:41
- Откуда: Ульяновск
Алексей К. » 16.03.2005 (Ср) 13:03
to Alibek: согласен
, твой вариант рациональнее.
-
Nikolka
-
- Продвинутый пользователь
-
-
- Сообщения: 174
- Зарегистрирован: 01.01.2004 (Чт) 2:06
Nikolka » 16.03.2005 (Ср) 20:09
Я чесна признаюсь, что в БД полный (не не ПЭ) ламер. Основы работы через Data Control знаю и пока мне этого хватало...
-
Nikolka
-
- Продвинутый пользователь
-
-
- Сообщения: 174
- Зарегистрирован: 01.01.2004 (Чт) 2:06
Nikolka » 16.03.2005 (Ср) 20:14
А как это можно сделать через Data? А то ета, в ссылке - ADO. А мне это сейчас никак не вписывается... Обычная Data, обычная Jet...
если можно.
-
VAC
-
- Новичок
-
-
- Сообщения: 26
- Зарегистрирован: 03.03.2002 (Вс) 3:32
- Откуда: Russia
VAC » 18.03.2005 (Пт) 13:45
Все очень просто...
- Код: Выделить всё
dim SQL
sub main()
SQL = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=твоя_база.mdb;Persist Security Info=False"
Recod_for_delete = 4
if DeleteRecord(Recod_for_delete) then
msgbox "Запрос выполнен успешно. id=" & Recod_for_delete
else
msgbox "Ошибка при выполнении запроса. id=" & Recod_for_delete
end if
end sub
function DeleteRecord(id) as boolean
on error goto err1
Set con = CreateObject("ADODB.Connection")
con.CommandTimeout = 10
con.Open SQL
con.execute "delete from твоя_таблица where (поле_счетчик = " & id & ")"
con.Close
Set con = Nothing
DeleteRecord = true
exit function
err1:
DeleteRecord = false
end function
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 42