Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
Трям, All! Есть таблица (fex): MainTable ( id integer, Value varchar(20)); Юзеру показывается результат: select Value from MainTable; Используется IBDataSet. Необходимо при добавлении записи юзером заполнить поле MainTable.id значением известным только at RunTime (это значение выбирается из другой таблицы). Как используя InsertSQL вставить запись? Или есть другие варианты. Изменять InsertSQL at RunTime имхо геморно... :( Подскажите, как сделать проще... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2003, 14:28 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
А Append, а потом Присвоить значение полю MainTable, так не работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2003, 14:32 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
Привет, земляк. Как то странно ты накрутить хочешь. Сделай проще. 1. Выбирай оба поля, но показывай пользователю только одно. 2. В обработчике OnNewRecord прописывай значение для поля id. 3. InsertSQL должен как и положено быть вида INSERT MainTable (id, Value) VALUES (:id, :Value) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2003, 14:34 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
А если id заполняется триггером на основе генератора.... Вот здесь Дельфя выкидывает, что значение id = NULL. Т.е. триггер OnInsert как бы не срабатывает - это что за хрень? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2003, 16:39 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
А если id заполняется триггером на основе генератора.... Теперь не понятно, то ты в рантайм хочешь писать значение id, то у тебя триггер генерит значение. С IBDataSet не работал, но если он работает по принципу кешированых изменений, то пока не сохранишь и не перезапросишь, то значения, которые сгенерировал триггер не получишь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2003, 16:43 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
то пока не сохранишь и не перезапросишь В том-то и дело, что ошибка возникает при выполнении DataSet.Post, а надо еще DataSet.ApplyChanges сделать, чтобы cache сбросить и только тогда (я так понял) сработает триггер. Так что же делать, если Post отработал, возникло исключение, а до триггера вообще дело не дошло...? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 09:20 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
Так помоему когда ты делаешь ПОСТ, UpdateSQL вызывает изменение таблицы автоматически. Во всяком случае я всегда так делаю, сперва пост, потом если все нормально коммит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 09:33 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
>>Вот здесь Дельфя выкидывает, что значение id = NULL. Т.е. триггер OnInsert как бы не срабатывает - это что за хрень? чтобы этого не было поставь в свойстве Required поля которое обновляется тригером False. Помоему так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 09:38 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
С id все ОК, вроде бы.... Привожу, как есть: на форме: IBDatabase, IBTransaction, IBDataset, Datasource, DBGrid Код: plaintext 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. После запуска проги: Код: plaintext 1. 2. 3. DBGrid отображает содержимое таблицы. После вставки новой записи пишу в поле mBegin: 555 (например) При сохранении изменений: Exception EIBInterbaseError "Validation error for column idRoad, value "***null***"" Где грабли? :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 09:55 |
|
||
|
Модификация InsertSQL или нет?
|
|||
|---|---|---|---|
|
#18+
Разобрался.... Всем спасибо, все свободны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 11:25 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=32163640&tid=2118268]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
33ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 310ms |

| 0 / 0 |
