|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Здравствуйте! Помогите. У меня проблема - не отрабатывает Insert в теблицу. Т.е. ошибок нет, но в таблице ничего не происходит. gd_date_vidach = Today() dw_report.object.out_no_date[1] = gd_date_vidach INSERT into F5_new (d) values (:gd_date_vidach); commit; Update F5_new; ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2010, 17:35 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
dendi, Вышеприведенный скрипт просто не обрабатывает ошибки, это не означает, что их нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.11.2010, 17:44 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
dendiUpdate F5_new; Это что за ересь? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2010, 09:30 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
я канешно не то чтобы специалист, но скажу dendigd_date_vidach = Today() слово date уже содержится в сокращенном виде в аббревиатуре gd) dw_report.object.out_no_date[1] = gd_date_vidach лучше наверное использовать setitem, хотя к инсерту эта строка вообще не имеет отношения INSERT into F5_new (d) values (:gd_date_vidach); commit; писать sql запросы прямо в тексте программы обычно не нужно, работу с базой берет на себя datawindow Update F5_new;ну это явно отчаянные попытки спасти положение) Вообще конечно хотелось бы знать что этот скрипт должен делать, потому как выглядит довольно сомнительно ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2010, 10:30 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
используй execute immediate ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2010, 10:36 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
А где анализ SQLCA.SQLCode (ну, хотя бы ...) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2010, 10:49 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
кодdendiINSERT into F5_new (d) values (:gd_date_vidach); должен работать если ты добавиш using sqlca; или что там у тебя ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2010, 11:12 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
19.11.2010 11:12, shut-up-and-skate пишет: > должен работать если ты добавиш using sqlca; или что там у тебя Может, хватит безграмотных советов? Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2010, 12:08 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Ну давайте все-таки разберем ошибки Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2010, 09:11 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
spas2001, Если Вы думаете, что данный код получит текущие дату и время, то Вы ошибаетесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2010, 10:19 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
spas2001, Имхо, после dw_report.update() проверять SQLCA.SQLCode бесполезно - там всегда 0, даже при ошибке, перехватывать которую нужно в событиях DW, но не суть. Возможно автор (кстати, чего-то его не слышно) привел различные попытки записи в таблицу, которые не работают. Может ограничения на уровне БД? Обработку ошибок нужно вставить обязательно, на крайняк включить trace и посмотреть логи. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2010, 16:42 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Пауэрбилдеровская переменная gd_date_vidach, насколько я понял, имеет тип date, а не datetime (иначе она бы именовалась gdt_date_vidach), а поле в таблице базы данных наверняка имеет тип date, который в базах данных хранит и время тоже и собсна говоря соответствует типу datetime в PB (т.е. поле одного типа, а значение вставляется другого). Я не утверждаю, что проблема именно в этом (и замечания по обработке ошибок поддерживаю), но можно попробовать передать INSERT-у переменную типа datetime чтоб выяснить здесь ли собака порылась: Код: plaintext 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 04:09 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
armblgspas2001, Имхо, после dw_report.update() проверять SQLCA.SQLCode бесполезно - там всегда 0 Д-а-а??? Вы уверены? При блобах может и бесполезно, а так - вполне жизнеспособный вариант То Ursego А я собственно зачем пример привел. Но скорее всего и поле в БД datetime если нормальный человек проектировал Марк, время будет нулевое и я это прекрасно знаю:) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 19:54 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Для самообразования:) RTFMError handling in scripts The scripts shown in the SQL examples above do not include error handling, but it is good practice to test the success and failure codes (the SQLCode attribute) in the transaction object after every statement. The codes are: Value Meaning 0 Success. 100 Fetched row not found. -1 Error; the statement failed. Use SQLErrText or SQLDBCode to obtain the detail. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 20:04 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
spas2001, Функции DW retrieve(), update() не меняют состояние trans.SQLCode. Ошибку можно увидеть только проверив, что вернула фунция (-1 в случае ошибки) или в событии dberror ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 00:56 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
То Anatoly Moskovsky Я это и имел ввиду:) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 10:15 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Хотя может быть и не совсем так, если доступ к базе происходит в синхронном режиме, мы можем проверить состояние транзакции непосредственно после update. Если в асинхронном, то тогда необходимо ловить dberror ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 10:19 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Спасибо большое всем за дельные советы! Вариантов было очень много предложено. Вышла из ситуации намного проще. Все отработало после того как INSERT и values поставила в одну строчку. gd_date_vidach = Today() dw_report.object.out_no_date[1] = gd_date_vidach INSERT into F5_new (d) values (:gd_date_vidach); commit; ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2010, 12:55 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
dendi, Что-то в это как-то слабо верится, если честно. А что за СУБД в которую делается вставка? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2010, 13:36 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
Как сказал робот Вертер, "это становится интересным"! Даже попахивает оккультизмом! Думаю, INSERT и тогда прекрасно отрабатывался, или-же была какая-то другая проблема (например, в свЯзи с сервером), которая потом исчезла. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2010, 04:23 |
|
не отрабатывает Insert
|
|||
---|---|---|---|
#18+
UrsegoКак сказал робот Вертер, "это становится интересным"! Даже попахивает оккультизмом! Думаю, INSERT и тогда прекрасно отрабатывался, или-же была какая-то другая проблема (например, в свЯзи с сервером), которая потом исчезла. Все может быть, в PB парсер embedded sql веселый :) Например, когда-то давным-давно у меня запрос в PowerScript коде : Код: plaintext 1. 2. 3.
Код: plaintext 1.
Вот я намучался пока нашел это ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2010, 05:25 |
|
|
start [/forum/topic.php?fid=15&msg=36965395&tid=1335821]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
61ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
others: | 288ms |
total: | 435ms |
0 / 0 |