Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.05.2009, 22:34   #1
zebra1
Новичок
Джуниор
 
Регистрация: 21.05.2009
Сообщений: 1
Злость помогите с запросои

Dim st_sql As String
st_sql = "Insert Into Video(Name,Year,Size,Type,Genre) Values (" & text_name & "," & text_year & "," & text_size & "," & text_type & "," & text_genre & ");"
MsgBox st_sql
Dim q As DAO.QueryDef
Set q = CurrentDb.CreateQueryDef("")
q.SQL = st_sql
q.Execute


Выдает ошибку:Run time error 3061
Слишком мало параметров.Требуется 4.
zebra1 вне форума Ответить с цитированием
Старый 22.05.2009, 10:19   #2
AlexandrSid
Форумчанин
 
Регистрация: 31.10.2007
Сообщений: 103
По умолчанию

В строке запроса точка с запятой на конец не нужна.
Возможно проблема в том, что некоторые заполняемые поля имеют тип строка. Тогда параметры нужно передавать так что бы в запросе они тоже были в ковычках, т.е. если параметр Name это строка тогда
Цитата:
st_sql = "Insert Into Video(Name,Year,Size,Type,Genre) Values (""" & text_name & """," & text_year & "," & text_size & "," & text_type & "," & text_genre & ")"
AlexandrSid вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц