LINUX.ORG.RU

И ещё про БД


0

0

При операции INSERT мы вносим в таблицу определённую строку. При этом PRIMARY KEY увеличивается на 1. Как в момент внесения узнать, какое значение он принял?


Это зависит с какой БД ты работаеш. и с каким API.
В mysql например ни как.
В оракле если не ошибаюсь
если висит триггер на primary key то можно сделать insert with call back
и вернуть сразу значение ключа.
как это в sybase db2 sapdb понятия не имею.

Aleks_IZA
()

А собственно, задача такая...

Я создал форму для того, чтобы отправить некий файл (картинку) на сервер. На сервере хочу организовать запись имени этого файла в уникальном виде. То есть будет целая куча таких картинок, но с разными именами. Вот и хотелось сразу узнать номер ID, который делается, чтобы с его помощью и устроить это. (К примеру, я посылаю файл pic.jpg, ему присваивается номер 7762 и он записывается под именем 7762pic.jpg). А может ли кто-нить подсказать, как это сделать иначе?

solom
() автор топика

Prosto. 1) v MYSQL Lock table 2) select max(id) from table 3) insert 4) unlock v Oracle insert into table (id,ccc) values(some_seq.nextval,'asdasd') returning id into :id

master
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.