LEADERSOFT.ru Разработка на заказ программ и сайтов
Форумы по информационным технологиям
 
Регистрация  |  Вход
left
Форумы Минимизировать
ПоискСписок форумов
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: Прчему оп...
 Тема: Прчему опять не получилось
 
 15.06.2007 21:10:10
All
4316 сообщения
1-ый


Тема: Прчему опять не получилось
Помогите ответить на вопрос несоответствия типов, при выполнении запроса на обновление, который я выполняю в подпрограмме. Ей передаю код номера, под которым в таблице стоит старое имя, и новое имя, которое надо записать.

Поле Field_Name в таблице строковое,
поле Code_Name - счетчик индексированный, без совпадений.

Sub Edit_Name(NewName As String, OldCode As Long)
Dim dbs As DAO.Database
Set dbs = CurrentDb

dbs.Execute "UPDATE MyTable SET Field_Name = '" & NewName & "' WHERE Code_Name = '" & OldCode & "';"

End Sub

Ругается по поводу несовпадения типов в условии отбора, т. е. после WHERE.

Очевидно не устраивает тип поля счетчик в таблице и тип переменной OldCode, которая Long, если я пытаюсь ее присвоить счетчику (он же длинное целое). Какой тип ставить?

Или надо по другому писать строку запроса. Как?

Если в качестве отбора использовать старое имя, то все работает замечательно.

Но меня это не устраивает, т. к. имена в таблице могут повторяться.

Спасибо.





P.S. Запросы на обновление
Автор: Евгений от 0:00:00 Источник ...
 15.06.2007 21:10:10
All
4316 сообщения
1-ый


RE: Прчему опять не получилось
dbs.Execute "UPDATE MyTable SET Field_Name = '" & NewName & "' WHERE Code_Name = " & OldCode & ";"


P.S. Запросы на обновление
Автор: Anonymous от 0:00:00 Источник ...
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: Прчему оп...
ПоискПоиск  Список форумовСписок форумов  
right