Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Ввод новой записи в таблицу
 
 автор: Леон   (26.09.2008 в 08:51)   личное сообщение
 
 

Как добавить (например по нажатию кнопки) новую запись в таблицу (табл1) в поле (поле1) значение поля text1 (форма1)

  Ответить  
 
 автор: osmor   (26.09.2008 в 09:02)   личное сообщение
 
 


currentdb.execute "INSERT INTO табл1 ( поле1) values ( " & forms![Форма1]![Text1] & ")"

Если TEXT1 тектовое, то :

currentdb.execute "INSERT INTO табл1 ( поле1) values ( '" & forms![Форма1]![Text1] & "')"

  Ответить  
 
 автор: Леон   (26.09.2008 в 10:37)   личное сообщение
 
 

Пишет ошибка синтаксиса

Private Sub кнопка29_Click()
CurrentDb.Execute "INSERT INTO [Наличие услуг]![ШифрМВЗ] values ('" & Forms![Подразделение1]![ШифрМВЗ] & "')"

End Sub

  Ответить  
 
 автор: Дрюня   (26.09.2008 в 10:47)   личное сообщение
 
 

после INTO идет название таблицы, в которую будет добавлена запись.
а вообще - нужно книжки читать, так программу не напишешь
как минимум: нужна проверка правильности того, что Вы пытаетесь запихнуть в таблицу, а вдруг там пустое поле?

  Ответить  
 
 автор: FORMAT   (26.09.2008 в 11:54)   личное сообщение
 
 

CurrentDb.Execute "INSERT INTO [Наличие услуг]![ШифрМВЗ] values ('" & Forms![Подразделение1]![ШифрМВЗ] & "')"

Неправильный синтаксис

CurrentDb.Execute "INSERT INTO ([Наличие услуг]) ( [ШифрМВЗ]) values ('" & Forms![Подразделение1]![ШифрМВЗ].value & "')"

Если недопустим ввод пустых значений, тогда предварительно проверяем

if not isnull( Forms![Подразделение1]![ШифрМВЗ]) then
CurrentDb.Execute "INSERT INTO ([Наличие услуг]) ( [ШифрМВЗ]) values ('" & Forms![Подразделение1]![ШифрМВЗ].value & "')"
else
msgbox ( "Поле не заполнено")
end if

Ну или что то в этом роде.

ЗЫ Называть поля и контролы кирилицей есть дурной тон. Используйте латиницу, так в последствии будет меньше проблем.

  Ответить  
 
 автор: Леон   (26.09.2008 в 11:58)   личное сообщение
 
 

А у меня после INTO идёт [название таблицы]![название столбца] или я не прав? Книжки это коненчно очень хорошо! Ну когда катастрофически не хватает времени . Причём содержания моих вопрос сами за себя говорят , что я вообще не программер... Я думаю форумы существуют не только для спецов экстра-класса? Если ломы дать дельный совет, то комментарии можно вообще оставить при себе, они не интеоресны и на них много ума не надо

  Ответить  
 
 автор: Леон   (26.09.2008 в 12:00)   личное сообщение
 
 

Format спасибо!

  Ответить  
 
 автор: Скорп   (26.09.2008 в 13:52)   личное сообщение
15 Кб.
 
 

еще можно ч-з отдельную форму, основанную на запросе
пример прикрепил

  Ответить  
 
 автор: FORMAT   (26.09.2008 в 13:57)   личное сообщение
 
 

ИМХО не стоит добавлять таким способом записи в таблицы. Там можно навводить чего угодно, в том числе и пустые записи.
Перед вводом обязательна нужна проверка, а в этом случае она отсутствует
ЗЫ Да, кстати, с ТЯПНИЦЕЙ ВСЕХ
ТЯП!!!

  Ответить  
 
 автор: Скорп   (26.09.2008 в 14:04)   личное сообщение
 
 

ну вобщем да..можно и пустые навводить
значит что!?
нужно быть внимательным!!

п.с. у тебя еще есть силы на "ТЯП"?

  Ответить  
 
 автор: Скорп   (26.09.2008 в 14:00)   личное сообщение
 
 

а с формы в таблицу сбрасываю так:


DoCmd.RunSQL "INSERT INTO [Таблица в которую сбрасываются данные]([Поле1 таблицы], [Поле2 таблицы], и т.д.)" _
& "SELECT [Поле1 формы], [Поле2 формы] и т.д. ;"

правда osmor вроде говорил что так вроде как нельзя, правда я не понял почему нельзя
но работает

  Ответить  
 
 автор: osmor   (26.09.2008 в 15:14)   личное сообщение
 
 

нкогда не говорил "нельзя" , говорил что будет сообщение от ACCESS которое придется отключать. по этому рекомендую использовать Execute
И еще говорил, что при добавлении в поля таблицы констант (переменных, полей таблицы и т.п.) , т.е. не полей другой таблицы, логичнее использовать синтаксис
INSERT INTO ..... VALUES

, а не
INSERT INTO ..... SELECT


см. мой первый пост в этой ветке

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList