Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка синтаксиса / 10 сообщений из 10, страница 1 из 1
11.03.2016, 07:19
    #39189579
noobs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
Добрый день, подскажите где собственно ошибка синтаксиса?
incorrect syntax near ','.

Код: vbnet
1.
2.
3.
4.
5.
6.
Set cnRecordset = cn.Execute("Update dbo.DogovorPlan Set Year= " & Y & " ,kod_25='" & kod25 & "',kod_usluga='" & usluga & "',kod_urovuslug='" & urov & "',kod_12='" & kod12 & "',kod_52='" & kod_52 & "',kod_33='" & kod33 & " ', " _
& " kod_39='" & kod39 & "',kod_47='" & kod47 & "',kod_103='" & kod103 & "',kod_24='" & kod24 & "',kod_AFE='" & AFE & "',kod_Cdelka='" & cdelka & "',kod_StatBud='" & sbud & "',kod_edizm='" & edizm & "',cost='" & cost & "',coefficient='" & coef & "', " _
& " volume01 ='" & v01 & "',volume02='" & v02 & "',volume03='" & v03 & "',volume04='" & v04 & "',volume05='" & v05 & "',volume06='" & v06 & "',volume07='" & v07 & "',volume08='" & v08 & "',volume09='" & v09 & "',volume10='" & v10 & "',volume11='" & v11 & "', " _
& " volume12='" & v12 & "',sum01='" & s01 & "',sum02='" & s02 & "',sum03='" & s03 & "',sum04='" & s04 & "',sum05='" & s05 & "',sum06='" & s06 & "',sum07='" & s07 & "',sum08='" & s08 & "',sum09='" & s09 & "',sum10 ='" & s10 & "',sum11='" & s11 & "',sum12='" & s12 & "',totalVolume='" & totalv & "', " _
& " totalSum='" & totals & "',kod_kurator ='" & kurat & "',kod_manager='" & manag & "',type_activ='" & activ & "',Kod_18='" & kod18 & "',nameUslugi='" & nameUs & "',kod_upr='" & upr & "',kod_13='" & kod13 & "',recoverable='" & recover & "',numberLot='" & lot & "',ZKprotocol='" & zk & "',procNDS='" & nds & "', " _
& " NumDogKurator='" & dkur & "' , valuta='" & valuta & "' where dbo.DogovorPlan.idPlan='" & idp & "' ")
...
Рейтинг: 0 / 0
11.03.2016, 07:52
    #39189585
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
noobs,

попробуйте так
хотя я сомневаюсь, что коды, суммы у вас символьные
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
dim s1
s1 = "Update dbo.DogovorPlan Set "
 s1 = s1 & " Year= " & y & " ,"
 s1 = s1 & " kod_25='" & kod25 & "',"
 s1 = s1 & " kod_usluga='" & usluga & "',"
 s1 = s1 & " kod_urovuslug='" & urov & "',"
 s1 = s1 & " kod_12='" & kod12 & "',"
 s1 = s1 & " kod_52='" & kod_52 & "',"
 s1 = s1 & " kod_33='" & kod33 & " ',"
 s1 = s1 & " kod_39='" & kod39 & "',"
 s1 = s1 & " kod_47='" & kod47 & "',"
 s1 = s1 & " kod_103='" & kod103 & "',"
 s1 = s1 & " kod_24='" & kod24 & "',"
 s1 = s1 & " kod_AFE='" & AFE & "',"
 s1 = s1 & " kod_Cdelka='" & cdelka & "',"
 s1 = s1 & " kod_StatBud='" & sbud & "',"
 s1 = s1 & " kod_edizm='" & edizm & "',"
 s1 = s1 & " cost='" & cost & "',"
 s1 = s1 & " coefficient='" & coef & "',"
 s1 = s1 & " volume01 ='" & v01 & "',"
 s1 = s1 & " volume02='" & v02 & "',"
 s1 = s1 & " volume03='" & v03 & "',"
 s1 = s1 & " volume04='" & v04 & "',"
 s1 = s1 & " volume05='" & v05 & "',"
 s1 = s1 & " volume06='" & v06 & "',"
 s1 = s1 & " volume07='" & v07 & "',"
 s1 = s1 & " volume08='" & v08 & "',"
 s1 = s1 & " volume09='" & v09 & "',"
 s1 = s1 & " volume10='" & v10 & "',"
 s1 = s1 & " volume11='" & v11 & "',"
 s1 = s1 & " volume12='" & v12 & "',"
 s1 = s1 & " sum01='" & s01 & "',"
 s1 = s1 & " sum02='" & s02 & "',"
 s1 = s1 & " sum03='" & s03 & "',"
 s1 = s1 & " sum04='" & s04 & "',"
 s1 = s1 & " sum05='" & s05 & "',"
 s1 = s1 & " sum06='" & s06 & "',"
 s1 = s1 & " sum07='" & s07 & "',"
 s1 = s1 & " sum08='" & s08 & "',"
 s1 = s1 & " sum09='" & s09 & "',"
 s1 = s1 & " sum10 ='" & s10 & "',"
 s1 = s1 & " sum11='" & s11 & "',"
 s1 = s1 & " sum12='" & s12 & "',"
 s1 = s1 & " totalVolume='" & totalv & "',"
 s1 = s1 & "  totalSum='" & totals & "',"
 s1 = s1 & " kod_kurator ='" & kurat & "',"
 s1 = s1 & " kod_manager='" & manag & "',"
 s1 = s1 & " type_activ='" & activ & "',"
 s1 = s1 & " Kod_18='" & kod18 & "',"
 s1 = s1 & " nameUslugi='" & nameUs & "',"
 s1 = s1 & " kod_upr='" & upr & "',"
 s1 = s1 & " kod_13='" & kod13 & "',"
 s1 = s1 & " recoverable='" & recover & "',"
 s1 = s1 & " numberLot='" & lot & "',"
 s1 = s1 & " ZKprotocol='" & zk & "',"
 s1 = s1 & " procNDS='" & nds & "',"
 s1 = s1 & " NumDogKurator='" & dkur & "' ,"
 s1 = s1 & " valuta='" & valuta & "' "
s1 = s1 & " where dpo.DogovorPlan.idPlan='" & idp & "' "
Debug.Print s1
''CurrentDb.QueryDefs("wrem").SQL = s1
''DoCmd.RunSQL s1
Set cnRecordset = cn.Execute(s1)
...
Рейтинг: 0 / 0
11.03.2016, 07:59
    #39189587
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
ПЕНСИОНЕРКА,

ошиблась
Код: vbnet
1.
s1 = s1 & " where dbo.DogovorPlan.idPlan='" & idp & "' "
...
Рейтинг: 0 / 0
11.03.2016, 08:29
    #39189596
noobs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
Все равно выходит ошибка, но уже другая
the multi-part identifier could not be bound

Собранный запрос выглядит вот так

Код: vbnet
1.
2.
Update dbo.DogovorPlan Set  Year= '2016' , kod_25='2140215/3707Д', kod_usluga='', kod_urovuslug='Э', kod_12='0901', kod_52='', kod_33='9800 ', kod_39='001', kod_47='04080201', kod_103='', kod_24='01054', kod_AFE='1.1.3.021', kod_Cdelka='1513', kod_StatBud='2.1.7.13.3', kod_edizm='ðàá. ìåñòî', cost='1910', coefficient='0,68', volume01 ='3', volume02='3', volume03='3', volume04='3', volume05='3', volume06='3', volume07='3', volume08='3', volume09='3', volume10='3', volume11='3', volume12='3', sum01='3896,4', sum02='3896,4', sum03='3896,4', sum04='3896,4', sum05='3896,4', sum06='3896,4', sum07='3896,4', sum08='3896,4', sum09='3896,4', sum10 ='3896,4', sum11='3896,4', sum12='3896,4', totalVolume='36',  totalSum='46756,8', kod_kurator ='86', kod_manager='129', type_activ='ÎÄ', Kod_18='10058761', nameUslugi='OIS', kod_upr='002-08', kod_13='', recoverable='', numberLot='288-16 ÍÏ', ZKprotocol='202-15/16', procNDS='0,18', NumDogKurator='5600715/3357Ä/2140215/3707Д' , valuta='RUB'  where dpo.Dogo
vorPlan.idPlan='3693' 
...
Рейтинг: 0 / 0
11.03.2016, 08:31
    #39189598
noobs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
А в чем тут ошибка?
ПЕНСИОНЕРКАПЕНСИОНЕРКА,

ошиблась
Код: vbnet
1.
s1 = s1 & " where dbo.DogovorPlan.idPlan='" & idp & "' "
...
Рейтинг: 0 / 0
11.03.2016, 08:41
    #39189603
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
noobs,

я же не могу создавать базу на 60 полей (создала на 60 текстовых полей +1 счетчик)
у вас же часть полей может быть числовые или дата или кавычка есть в текстовом поле
...
Рейтинг: 0 / 0
11.03.2016, 09:11
    #39189623
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
noobs,

не срабатывает where. без него работает
Код: sql
1.
2.
UPDATE [dbo].DogovorPlan SET [Year] = '2018'
WHERE dbo.DogovorPlan.idPlan=1;
...
Рейтинг: 0 / 0
11.03.2016, 11:51
    #39189809
Ошибка синтаксиса
Подозреваю, что поле idPlan у вас числовое, поэтому условие должно выглядеть так:
where dpo.DogovorPlan.idPlan=3693
т.е. 3693 без апострофов.
ПЕНСИОНЕРКА хотя я сомневаюсь, что коды, суммы у вас символьные Я тоже. Причем некоторым полям вы присваиваете пустую строку.

ИМХО, здесь правильнее открыть Recordset и изменить запись в нем, присвоив полям значения из переменных.
...
Рейтинг: 0 / 0
11.03.2016, 12:29
    #39189867
noobs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка синтаксиса
Лишние апострофы я уже убрал, но появилась другая ошибка
Error converting data type varchar to numeric
изменив запятую на точку запрос выполняется нормально и на сервере сохраняются данные, а как сделать чтобы всегда была точка независимо от того на каком компьютере открывается база?
...
Рейтинг: 0 / 0
11.03.2016, 13:40
    #39190007
Ошибка синтаксиса
noobsкак сделать чтобы всегда была точка независимо от того на каком компьютере открывается база? Функция Str().

Еще раз! Редактирование записи в Recordset избавит вас не только от этой проблемы, а еще формата даты, значений Null и кавычек внутри текстовых значений.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ошибка синтаксиса / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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