powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / удаление данных из таблицы
25 сообщений из 32, страница 1 из 2
удаление данных из таблицы
    #37570362
Guiza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую!

Долго бьюсь над казалось бы простой вещью.
Есть форма в ней есть поле со списком, назовем его список1. Источником строк список1 является таблица, назовем её таблица1.

необходимо выделенное значение из списка1 и нажатие кнопки "удалить" удалить из таблицы1, то что было выделено в списке1
Вешаю по событию на клик кнопки запрос
Код: vbnet
1.
2.
Me!список1.RowSource = "DELETE FROM таблица1" _
& " WHERE таблица1.уникальный_код=" & Me!список1 & ";"



только ничего не происходит.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570375
Фотография Sator Arepo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guiza,

Так вы будете еще долго биться. Почитайте, ФАК
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570376
DzonyBB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guiza
Код: vbnet
1.
2.
Me!список1.RowSource = "DELETE FROM таблица1" _
& " WHERE таблица1.уникальный_код=" & Me!список1 & ";"


????? Интересные новшества . Если я не ошибаюсь,то Delete ,это запросы действия,и запускаются немного по другому.Загляните в FAQ , может поможет???
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570447
Guiza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а вы думаете я его не смотрел?
С моим уровнем знаний Access VBA то что там написано из разряда "гляжу в книгу вижу фигу" пересмотрел книги по акцесу в частности вба но ничего подобного нигде толком не описывается.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570472
Фотография Sator Arepo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guizaа вы думаете я его не смотрел?
С моим уровнем знаний Access VBA то что там написано из разряда "гляжу в книгу вижу фигу" пересмотрел книги по акцесу в частности вба но ничего подобного нигде толком не описывается.
Что вам конкретно непонятно? Процитируйте это место из ФАКа.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570475
ALEXIS_22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Источником строк списка должна быть инструкция SELECT ..... после того как Вы удалите Вашей инструкцией DELETE, что-либо из таблицы.
Код: vbnet
1.
CurrentDb.Execute ("DELETE ...  FROM ...  WHERE ...;"), dbFailOnError



Обновите источник строк списка после этого.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570480
Guiza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sator Arepo,

хм... ну первое там 4 вопроса рассматриваются, что вообще ко мне относится?
как я понял я сам запрос делаю неправильно, если бы у меня был запрос на сортировку данных то такого вида запрос нормально бы работал, но тут совсем все не так.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570483
Фотография Sator Arepo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALEXIS_22,

Спасибо, ALEXIS_22
Теперь ТС знает, что не нужно пытаться понять документацию - всегда найдутся добрые люди, которые напишут нужный код. И еще спасибо, что учите начинающих плохим привычкам - запихивать строку SQL инструкции непосредственно в св-во объекта, вместо того, чтобы сделать, как положено: выделить строковую переменную под SQL инструкцию и присваивать уже эту переменную.

Код: vbnet
1.
2.
3.
Dim SQL as String
SQL = "DELETE ...  FROM ...  WHERE ...;"
CurrentDb.Execute (SQL), dbFailOnError
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570488
Фотография Sator Arepo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sator ArepoALEXIS_22,

Спасибо, ALEXIS_22
Теперь ТС знает, что не нужно пытаться понять документацию - всегда найдутся добрые люди, которые напишут нужный код. И еще спасибо, что учите начинающих плохим привычкам - запихивать строку SQL инструкции непосредственно в св-во объекта, вместо того, чтобы сделать, как положено: выделить строковую переменную под SQL инструкцию и присваивать уже эту переменную.

Код: vbnet
1.
2.
3.
Dim SQL as String
SQL = "DELETE ...  FROM ...  WHERE ...;"
CurrentDb.Execute (SQL), dbFailOnError


Кстати, скобки здесь не нужны.

CurrentDb.Execute SQL, dbFailOnError
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570490
Фотография Sator Arepo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guiza,

Вам для начала нужно было разобраться, для чего нужно св-во Rowsource.
Потом понять разницу, между запросами типа SELECT и запросами, изменяющими данные - INSERT/UPDATE/DELETE.
Почитайте какую-нибудь азбуку по SQL и Аксессу, прежде чем бросаться в бой.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37570533
ALEXIS_22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sator Arepo

Sator ArepoСпасибо, ALEXIS_22
Теперь ТС знает, что не нужно пытаться понять документацию - всегда найдутся добрые люди, которые напишут нужный код. И еще спасибо, что учите начинающих плохим привычкам - запихивать строку SQL инструкции непосредственно в св-во объекта, вместо того, чтобы сделать, как положено: выделить строковую переменную под SQL инструкцию и присваивать уже эту переменную.

Пожалуйста. Считаю что нет ничего зазорного в том, что подсказал ТС направление действий. Остальное ему все равно придется делать самому. По поводу плохих привычек. Согласен. Но считаю, что тон замечания мог быть и менее категоричным.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37571983
alvk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sator ArepoALEXIS_22,

Спасибо, ALEXIS_22
Теперь ТС знает, что не нужно пытаться понять документацию - всегда найдутся добрые люди, которые напишут нужный код. И еще спасибо, что учите начинающих плохим привычкам - запихивать строку SQL инструкции непосредственно в св-во объекта, вместо того, чтобы сделать, как положено: выделить строковую переменную под SQL инструкцию и присваивать уже эту переменную.

Код: vbnet
1.
2.
3.
Dim SQL as String
SQL = "DELETE ...  FROM ...  WHERE ...;"
CurrentDb.Execute (SQL), dbFailOnError


+10
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572110
Guiza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем большее спасибо за ответы они помогли решить проблему заодно и нового узнал.
конечное что я сделал
Код: vbnet
1.
2.
3.
4.
5.
6.
Dim SQL as String

SQL=DELETE * FROM таблица1" _
& " WHERE таблица1.уникальный_код=" & Me!список1 & ";"

CurrentDb.Execute SQL 



При добавлении dbFailOnError ругается на ошибку на отсутствия типа данных dbFailOnError.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572133
alvk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guiza,

1. это не критично, можно не писать.
2. возможно вы неправильно добавили.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572151
ALEXIS_22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alvkSator ArepoALEXIS_22,

Спасибо, ALEXIS_22
Теперь ТС знает, что не нужно пытаться понять документацию - всегда найдутся добрые люди, которые напишут нужный код. И еще спасибо, что учите начинающих плохим привычкам - запихивать строку SQL инструкции непосредственно в св-во объекта, вместо того, чтобы сделать, как положено: выделить строковую переменную под SQL инструкцию и присваивать уже эту переменную.

Код: vbnet
1.
2.
3.
Dim SQL as String
SQL = "DELETE ...  FROM ...  WHERE ...;"
CurrentDb.Execute (SQL), dbFailOnError


+10

Конечно не очень приятно получать замечания. Но все же, хочется доразобраться ... неужели так критично, то что строка инструкции SQL должна быть обязательно предварительно определена переменной. С точки зрения правильности оформления кода и его читабельности я абсолютно согласен. А из за чего это еще плохо?
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572160
alvk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALEXIS_22,

Чтобы потом проще было тому же ТС, и не только, debug.print сделать. Думайте о будущем.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572165
Фотография Sator Arepo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALEXIS_22,
Когда будете отлаживать инструкцию из строки вперемешку с данными из пользовательского ввода, вот тогда и поймете, зачем это нужно.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572220
DzonyBB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALEXIS_22А из за чего это еще плохо?
ALEXIS_22 Вам например такое знакомо?
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572232
Guiza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alvk,

а как можно неправильно записать?
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572249
alvk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guiza,

покажите, я же не вижу, может там запятой не хватает. принтскрин хотя бы.
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572256
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guizaа как можно неправильно записать?
Множество НЕправильных вариантов бесконечно
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572298
ALEXIS_22
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DzonnyBBALEXIS_22 Вам например такое знакомо?

Да порой встречается :)

Пользовательские параметры стараюсь определять как переменные, например
Код: vbnet
1.
2.
s1 = "([имя] Like IIf(IsNull([forms]![F1]![pole2]),""*"",""*"" & [Forms]![F1]![pole2] & ""*"")) "
s2 = "([что_то_еще] Like IIf(IsNull([forms]![F1]![pole4]),""*"",""*"" & [Forms]![F1]![pole4] & ""*"")) "



и далее уже формирую необходимую мне инструкцию SQL
Me.ПФИ.Form.RecordSource = "SELECT ИНСТР.* FROM ИНСТР WHERE ((" & s1 & ") And (" & s2 & ")) ORDER BY ИНСТР.Код; "

Простите
Код: vbnet
1.
2.
instrSQL= "SELECT ИНСТР.* FROM ИНСТР WHERE ((" & s1 & ") And (" & s2 & "))  ORDER BY ИНСТР.Код; "
Me.ПФИ.Form.RecordSource =instrSQL
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #37572302
DzonyBB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ALEXIS_22Да порой встречается :)
Тогда зачем задавать глупые вопросы?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
удаление данных из таблицы
    #39443997
Фотография Rikozenit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Друзья, у меня похожая задача! Только обновление данных в таблице!

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub обновить_всех_Click()
Me.Requery
Dim SQL As String
SQL = "UPDATE Сотрудники2 SET Сотрудники2.Врем_дата = Null WHERE (((Сотрудники2.Врем_дата)= Me.Ф_на_дату));"

CurrentDb.Execute SQL, dbFailOnError
End Sub



Но не работает( Пишет: СЛИШКОМ МАЛО ПАРАМЕТРОВ, ТРЕБУЕТСЯ 1. Это очевидно из-за Me.Ф_на_дату - временное поле, которое создано в форме и не заносится ни в одну из таблиц. пробовал вот так: '" & Me.Ф_на_дату.Value & "' , но тоже не работает(
Подскажите, пожалуйста, как исправить?
...
Рейтинг: 0 / 0
удаление данных из таблицы
    #39444001
Прогер_самоучка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RikozenitДрузья, у меня похожая задача! Только обновление данных в таблице!

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub обновить_всех_Click()
Me.Requery
Dim SQL As String
SQL = "UPDATE Сотрудники2 SET Сотрудники2.Врем_дата = Null WHERE (((Сотрудники2.Врем_дата)= Me.Ф_на_дату));"

CurrentDb.Execute SQL, dbFailOnError
End Sub




Но не работает( Пишет: СЛИШКОМ МАЛО ПАРАМЕТРОВ, ТРЕБУЕТСЯ 1. Это очевидно из-за Me.Ф_на_дату - временное поле, которое создано в форме и не заносится ни в одну из таблиц. пробовал вот так: '" & Me.Ф_на_дату.Value & "' , но тоже не работает(
Подскажите, пожалуйста, как исправить?заменить на
Код: vbnet
1.
SQL = "UPDATE Сотрудники2 SET Сотрудники2.Врем_дата = Null WHERE Сотрудники2.Врем_дата = " & Me.Ф_на_дату
...
Рейтинг: 0 / 0
25 сообщений из 32, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / удаление данных из таблицы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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