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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Синтаксис блин
 
 автор: Гоблин   (12.09.2011 в 11:48)   личное сообщение
 
 

Привет народ.
Я знаю, что все делаю через это самое, пока не дойду до нужного как надо. И все же подскажите, что ему не так?
Запускаю рекордсет на основании запроса. Запрос работает правильно, значения верны. Эти значения подставляю в запрос на обновление определенного поля. Вот кусок кода


Set rst = CurrentDb.OpenRecordset("SELECT [Набор расходных].КодМоделиМ, [Совмещения типов].Сортировка, Фирмы.Фирма, Модели.Модель " _
& " FROM ((Типы INNER JOIN [Совмещения типов] ON Типы.КодТипа = [Совмещения типов].КодТипаС) INNER JOIN Фирмы ON Типы.КодТипа = Фирмы.КодТипаТ) " _
& " INNER JOIN (Модели INNER JOIN [Набор расходных] ON Модели.КодМодели = [Набор расходных].КодМоделиД) ON Фирмы.КодФирмы = Модели.КодФирмыФ " _
& " WHERE ((([Набор расходных].КодМоделиМ) = " & Right(Me.[Поле9], Len(Me.[Поле9]) - 1) & ")) ORDER BY [Совмещения типов].Сортировка;")

With rst
If .RecordCount <> 0 Then
Do While Not .EOF
MsgBox (![Фирма]) ' ВСТАВЛЕН ДЛЯ ПРОВЕРКИ
DoCmd.RunSQL "UPDATE Модели SET Модели.Модель = Модели.Модель & ![Фирма] WHERE (((Модели.КодМодели)=" & Right(Me.[Поле9], Len(Me.[Поле9]) - 1) & "));"
.MoveNext
Loop
End If
End With
Else
MSGBOX в свойство рекорсета вставил для проверки. И показывает абсолютно правильные значения. Запрос на обновление работает. А какого .... он SET Модели.Модель = Модели.Модель & ![Фирма] эту самую фирму не вставляет???
Причем, если вместо поля фирма подставить &'\'& он как умна Маша даст результат \\\ так как всего три значения. Пытался через переменную, заключал поле фирма в кавычки, в апострофы. Пусто блин в результате. Если запрос 5 значений найдет, то пять раз msgbox сработает и покажет правильные значения. Как заставить эти значения появиться в нужной ячейке через знак \

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

провер пуктуацию
= Модели.Модель & ![Фирма] WHERE
где кавычки
= Модели.Модель " & ![Фирма] & " WHERE

  Ответить  
 
 автор: Гоблин   (12.09.2011 в 12:02)   личное сообщение
 
 

Кот спасибо.

С этой синтаксикацией у меня вечная беда. Я только сейчас допер. А вчера опыты целый день ставил. Ничего не выходило. Вот ведь в который раз задаю вопрос и тут же сам же нахожу ответ. К чему бы это?

  Ответить  
 
 автор: Гоблин   (12.09.2011 в 11:59)   личное сообщение
 
 

Блин нашел!!!
...&'/'&'"&![Фирма]&"'...
А почему без ! перед фирмой изначально не работал - ХЗ. Вот всегда так. Стоит вопрос написать, как ответ с очередным опытом приходит.
ЗАРАБОТАЛО

ps А смайлики сайта работать не хотят. :)

  Ответить  
 
 автор: snipe   (12.09.2011 в 12:03)   личное сообщение
 
 

"UPDATE Модели SET Модели.Модель = Модели.Модель![" & .fields("Фирма") & "] WHERE (((Модели.КодМодели)=" & Right(Me.[Поле9], Len(Me.[Поле9]) - 1) & "));"

чета как-то так

  Ответить  
 
 автор: Гоблин   (12.09.2011 в 12:06)   личное сообщение
 
 

Снип, спасибо. Это еще один варьянт, мною не опробованный. На всякий случай проверю. Но вроде уже пашет.

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