|
insert FDB из 1С | ☑ | ||
---|---|---|---|---|
0
Юзер123
naïve
07.10.14
✎
10:06
|
Доброго дня.
Пытаюсь настроить insert из 1с в FDB базу. Вот строка запроса с данными Insert INTO STAFF_CARDS_AREAS (ID_STAFF_CARDS_AREAS,STAFF_CARDS_ID, AREAS_TREE_ID,PROHIBIT,AREAS_IS_REQUIRED) values (777, 9995, 7 433, 0,0) вот сам запрос ТекстЗапросаНаДоступ = "Insert INTO STAFF_CARDS_AREAS (ID_STAFF_CARDS_AREAS,STAFF_CARDS_ID, AREAS_TREE_ID,PROHIBIT,AREAS_IS_REQUIRED) " + "values ("+ ID_STAFF_CARDS_AREAS + ", " + СокрЛП(ID_CARD) + ", " + AREAS_TREE_ID + ", 0,0)"; Текст ошибки Проблемы с выполнением запроса к FireBird{Форма.Форма.Форма(643)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [ODBC Firebird Driver][Firebird]Dynamic SQL Error SQL error code = -104 Token unknown - line 1, column 131 Таблица в FDB http://i.gyazo.com/579610a2acd5f52b34a82ee24c5dc67e.png в чем дело подскажите кто знает) |
|||
1
Banned
07.10.14
✎
10:07
|
Сообщить(ТекстЗапросаНаДоступ);
|
|||
2
Юзер123
naïve
07.10.14
✎
10:09
|
(1)
Вот строка запроса с данными Insert INTO STAFF_CARDS_AREAS (ID_STAFF_CARDS_AREAS,STAFF_CARDS_ID, AREAS_TREE_ID,PROHIBIT,AREAS_IS_REQUIRED) values (777, 9995, 7 433, 0,0) все уже написал же) |
|||
3
Banned
07.10.14
✎
10:09
|
"7 433"
Сюда внимательно смотри... |
|||
4
Ненавижу 1С
гуру
07.10.14
✎
10:10
|
AREAS_TREE_ID это число, используй функцию формат, чтобы исключить в преобразовании к строке неразрывный пробел
Конкретно здесь: 7 433 |
|||
5
Юзер123
naïve
07.10.14
✎
10:11
|
(4) (3)
сейчас уберу пробелу и преобразую в число) . минутку) |
|||
6
Юзер123
naïve
07.10.14
✎
10:19
|
просто убрал пробелы и все заработало. Спасибо)
|
|||
7
Юзер123
naïve
07.10.14
✎
10:45
|
Вопрос в по горячим следам.
Если надо сделать по 1 таблице STAFF_CARDS_AREAS 2 строчки. Как быть? Надо что бы ID_STAFF_CARDS_AREAS было уникальным. Но если вставить запрос в цикл то после записи данные не обновляются. С SQL запросами не особо дружу. Знаю есть некий UBDATE но как оно работает ? |
|||
8
Юзер123
naïve
07.10.14
✎
10:45
|
т.е. надо сделать так что бы после записи в таблицу данные сразу же обновлялись..
|
|||
9
Kurbash
07.10.14
✎
10:49
|
так апдейт таблицу по этому ID
|
|||
10
Юзер123
naïve
07.10.14
✎
10:49
|
(9) как это будет выглядеть?) ща погуглю)
|
|||
11
Kurbash
07.10.14
✎
10:50
|
update table ....set...where ID_STAFF_CARDS_AREAS=...
|
|||
12
Kurbash
07.10.14
✎
10:50
|
update table ....set...where ID_STAFF_CARDS_AREAS in (select ID_STAFF_CARDS_AREAS from....)
|
|||
13
Юзер123
naïve
07.10.14
✎
10:52
|
(12) (11) .... тут в ступор вводят)
|
|||
14
Kurbash
07.10.14
✎
10:53
|
три точки в ступор вводят?
|
|||
15
Юзер123
naïve
07.10.14
✎
10:54
|
UPDATE STAFF_CARDS_AREAS
SET ID_STAFF_CARDS_AREAS='МойИд' так? |
|||
16
Kurbash
07.10.14
✎
10:55
|
нет,UPDATE STAFF_CARDS_AREAS set каким столбцам какие значения присваиваешь SET ID_STAFF_CARDS_AREAS='МойИд'
|
|||
17
Kurbash
07.10.14
✎
10:55
|
UPDATE STAFF_CARDS_AREAS set каким столбцам какие значения присваиваешь where ID_STAFF_CARDS_AREAS='МойИд'
|
|||
18
Юзер123
naïve
07.10.14
✎
10:56
|
(16)
ОК спс. Сейчас попробуем |
|||
19
Юзер123
naïve
07.10.14
✎
10:57
|
set повторяет то что в insert написано?
|
|||
20
Юзер123
naïve
07.10.14
✎
10:57
|
через "="
|
|||
21
Kurbash
07.10.14
✎
10:57
|
||||
22
Kurbash
07.10.14
✎
10:59
|
Update INTO STAFF_CARDS_AREAS set AREAS_TREE_ID=777,PROHIBIT=9995 и так далее where where ID_STAFF_CARDS_AREAS='МойИд'
|
|||
23
Kurbash
07.10.14
✎
11:00
|
Update STAFF_CARDS_AREAS set AREAS_TREE_ID=777,PROHIBIT=9995 и так далее where where ID_STAFF_CARDS_AREAS='МойИд' как то так
|
|||
24
Юзер123
naïve
07.10.14
✎
11:07
|
(23) (21)
спасибо. учим) |
|||
25
Юзер123
naïve
07.10.14
✎
11:21
|
ТекстUpdate = "Update STAFF_CARDS_AREAS set STAFF_CARDS_ID = "+СокрЛП(ID_CARD)+", PROHIBIT = 0, AREAS_IS_REQUIRED = 0, AREAS_TREE_ID = " +AREAS_TREE_ID+"
| where ID_STAFF_CARDS_AREAS="+ ID_STAFF_CARDS_AREAS ; ЗапросНаДоступ.Open(ТекстUpdate); как то так? |
|||
26
Kurbash
07.10.14
✎
11:23
|
похоже на правду, про пробелы не забудь
|
|||
27
Юзер123
naïve
07.10.14
✎
11:24
|
(26) да проверил) все работает) спасибо.
|
|||
28
Юзер123
naïve
07.10.14
✎
11:27
|
а если без update в какой момент происходит обновление таблиц?
|
|||
29
Kurbash
07.10.14
✎
11:28
|
после insert надо принять транзакцию. Для этого етсь команда Commit
|
|||
30
Kurbash
07.10.14
✎
11:28
|
т.е. инсерт и т.д тотом ставишь ";" и соммит
|
|||
31
Юзер123
naïve
07.10.14
✎
11:42
|
(30) спасиб. надо почитать таки про sQl запросы...
|
|||
32
Kurbash
07.10.14
✎
11:47
|
это уже не запросы это PL/SQL
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |