Как найти идентификатор последней записи в таблице Oracle для того, чтобы добавить новую запись в таблицу?::unsure.gif::
Как это сделать с помощью SEQUENCES(последовательностей)?
Написал: chaynik(40)
Поиск идентификатора последней записи в таблице Oracle
ODBC
Модератор: Andrew™
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Гость
Сообщение Гость »
Hi,
Ты бы хоть сказал, что значит "последняя". Если с самым большим
автоинкрементным ключом, то стандартно - Set - Previous. Проблема в том, что
в SQL на больших таблицах Previous весьма не эффективен. Проблема решается
переходом от автоинкрементных ключей к автодекрементным и заменой в
классах/шаблонах Set - Previous на Set - Next.
WBR, Nick Tsigouro. MailTo:Nick@arsis.ru
(Добавление)
либо через SELECT MAX(PrimaryField) from myTable
либо сразу добавить
insert into ars_typesprav
(typesprid,typesprname)
values((select max(typesprid)+1 from ars_typesprav),'ggg')
лучше всего в оракле для этих целей использовать Sequences
Andrew Myalin
andrew@arsis.ru
http://mavcla.arsis.ru (MAV Direct ODBC)
Yahoo group: clarion@yahoogroups.com
Написал: ClaList(2)
Ты бы хоть сказал, что значит "последняя". Если с самым большим
автоинкрементным ключом, то стандартно - Set - Previous. Проблема в том, что
в SQL на больших таблицах Previous весьма не эффективен. Проблема решается
переходом от автоинкрементных ключей к автодекрементным и заменой в
классах/шаблонах Set - Previous на Set - Next.
WBR, Nick Tsigouro. MailTo:Nick@arsis.ru
(Добавление)
либо через SELECT MAX(PrimaryField) from myTable
либо сразу добавить
insert into ars_typesprav
(typesprid,typesprname)
values((select max(typesprid)+1 from ars_typesprav),'ggg')
лучше всего в оракле для этих целей использовать Sequences
Andrew Myalin
andrew@arsis.ru
http://mavcla.arsis.ru (MAV Direct ODBC)
Yahoo group: clarion@yahoogroups.com
Написал: ClaList(2)
Гость
Сообщение Гость »
Я имела в виду: как с помощью Clarion'а, работая с БД Oracle, найти последнюю запись (инкрементный номер), ведь в Oracle нет понятия EOF
Заранее спасибо!
chaynik
(Добавление)
Например, через {PROP:SQL} сделать запрос 'SELECT MAX(ID) FROM MyTable'
и через NEXT его прочитать, желательно в транзакции, чтобы никто ничего не
добавил
WBR, Igor Timofeev
Написал: ClaList(2)
Заранее спасибо!
chaynik
(Добавление)
Например, через {PROP:SQL} сделать запрос 'SELECT MAX(ID) FROM MyTable'
и через NEXT его прочитать, желательно в транзакции, чтобы никто ничего не
добавил
WBR, Igor Timofeev
Написал: ClaList(2)
Гость
Гость
Гость
Гость
Вернуться в «SQL, Oracle, ...»
Перейти
- CW
- ↳ CLARION for Windows
- ↳ CLARION for Internet
- ↳ Clarion.NET
- Эксклюзив
- ↳ Приват
- CLARION и...
- ↳ Reports
- ↳ Железо
- ↳ Готовые программы, шаблоны, библиотеки...
- ↳ cJSON
- ↳ LibCurl
- ↳ MAV
- ↳ SQL, Oracle, ...
- ↳ Multi-программирование(Pascal/Delphi, и т.д.)
- ↳ WinDev
- DOS
- ↳ CLARION for DOS
- Разное
- ↳ Новости
- ↳ English
- ↳ Ресурсы
- ↳ Работа
- ↳ Обо всем ...
- ↳ Обсуждение этого Форума (типа, Гостевая книга)