Удаление записей

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Удаление записей

Сообщение p0w3r » 04.01.2008 (Пт) 17:59

Привет! У меня есть 2-ва грида в одном сотрудники в другом их счета. При нажатие на любом сотруднике в гриде со счетами отображаються все счета данного сотрудника. Как мне написать команду на кнопку что бы удалялись все счета из грида? :)

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 04.01.2008 (Пт) 19:25

Гридов полно... И все они очищаются по-разному... :roll: Какой грид используется в твоей программе?
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 04.01.2008 (Пт) 19:29

Дата грид... источник adodc

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 04.01.2008 (Пт) 19:44

Так? Set DataGrid1.DataSource = Nothing
Или нужно что-то другое?
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 04.01.2008 (Пт) 19:47

Ну как я понял из самой базы он ничего не удаляет... мне надо что бы из базы тож удалялось...

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 04.01.2008 (Пт) 20:35

Код: Выделить всё

With Adodc1.Recordset
    .MoveFirst
    While Not .EOF
        .Delete
        .MoveNext
    Wend
End With
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 05.01.2008 (Сб) 0:41

а вот еще вопросик... как сделать удаление какой то определенной записи?

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 05.01.2008 (Сб) 1:30

Как вариант -- в коде, который я привел, в цикле вставь проверку значения поля на соответствующее значение и выполняй Delete только, если условие выполняется.
А лучше программно сгенерировать SQL-запрос "DELETE FROM table WHERE..." и выполнить его для твоих данных.
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 05.01.2008 (Сб) 17:25

чет я не понимаю куда воткнуть этот запрос.. :)

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 05.01.2008 (Сб) 17:45

ADODC1.Recordset.ActiveConnection.Execute "DELETE FROM"...
Затем Refresh. По идее должно работать.
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 05.01.2008 (Сб) 18:00

Adodc2.Recordset.ActiveConnection.Execute "DELETE * FROM счет WHERE (счет.сотрудники ='" + Label1.Caption + "');"
Adodc2.Refresh вот я так написал записи то он удаляет а почемуто на форме не обновляеться... когда перезапускашь только тогда записи проподают...

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 05.01.2008 (Сб) 18:20

А если SELECT запрос выполнить вместо Refresh?

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 05.01.2008 (Сб) 18:21

Кстати, "DELETE FROM", а не "DELETE * FROM". Но это так... К вопросу отношения не имеет...
А если попробовать как-нибудь обновить данные в гриде. Не помню -- там есть какой-нибудь Refresh или Update? Или попробовать Set DataGrid1.DataSource=Adodc2...
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 05.01.2008 (Сб) 19:04

Блин че я тупил :)))) можно же сделать что при позиционирование курсора на нужном счете в кнопке удаления просто прописать Adodc2.Recordset.Delete

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 07.01.2008 (Пн) 21:50

вопрос.. :) У меня в проекте 2 формы... во второй форме у меня идет добавление счетов в таблицу счета, когда я нажимаю кнопку по которой я возвращаюсь в форму1 и хочу потом добавить еще счета во второй форме у меня в полях Текс бокс остаються те значения которые я вводил ранее... как сделать что бы они не оставались??

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 07.01.2008 (Пн) 22:15

Не понял? Надо просто очистить текстовые поля? Text1.Text="" ? :)
Salus populi suprema lex

p0w3r
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 04.01.2008 (Пт) 17:48

Сообщение p0w3r » 07.01.2008 (Пн) 22:42

Да я уже так и замутил....)))))))


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 65

    TopList