Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Вниз

Identity в базе SQLServer   Найти похожие ветки 

 
Alexey ©   (2004-04-06 18:12) [0]

Как вытащить индентификатор из таблицы после выполнения ADOQeery в Дельфях6 функция в кваери isnert, а также записать его в параметр, база SQL ???


 
Black Krok   (2004-04-06 18:19) [1]

У меня сработал такой вариант:


INSERT INTO orientir_bases (NAME)
      VALUES ("")
      RETURNING id INTO :IDBase


При добавлении срабатывает триггер, записывающий в поле id значение из счетчика. После отработки команды в параметре IDBase
я получаю содержимое этого поля


 
KSergey ©   (2004-04-07 07:50) [2]

> Black Krok   (06.04.04 18:19)

Это синтаксис для како сервера? Какой версии?

Вообще код примерно такой:

INSERT (...) VALUES (...)
SELECT @@IDENTITY

Для MS SQL 2000 вместо @@IDENTITY надо использовать @@SCOPE_IDENTITY (примерно так, справки под рукой нет)

Тогда запрос вернет одну запись из одного столбца, в которм будет последнее ID

Ну и в случае MS SQL ниже 2k почитать об ограничениях на @@IDENTITY


 
Alexey ©   (2004-04-07 09:22) [3]

Сервер MS SQL 2000 вариант:

INSERT INTO orientir_bases (NAME)
     VALUES ("")
     RETURNING id INTO :IDBase

не пашет, выдает ошибку какую забыл ... потом посмотрю. На счет @@scope_identity не знаю чуть позже посмотрю


 
roottim   (2004-04-07 09:52) [4]

>RETURNING id INTO :IDBaseэто по ОРАКЛУ..

а МССКЛ блокировочник и после вставки , как я понимаю, необходимо именно прочитать эту @@IDENTITY, после чего  блокировка снимется и другие транзакции продолжат вставку.. ну или что там...


 
Alexey ©   (2004-04-07 17:54) [5]

Всем спасибо ... ошибка была в другой ереси ... слега напутал ... кстати один из правильных вариантов такой:

В кваери
select @@IDENTITY AS ID

В Дельфях
параметр:=ADOQuery["ID"]

параметр: integer



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.033 c
14-1081622468
Brahman
2004-04-10 22:41
2004.05.02
В это вечер..


1-1082018889
sniper
2004-04-15 12:48
2004.05.02
Перекодировка текстового файла из DOS в WIN


7-1078480371
visualman
2004-03-05 12:52
2004.05.02
Срочно нужен ДОК


1-1082029201
avgur
2004-04-15 15:40
2004.05.02
Вопрос по кратности значений


14-1081856362
Alex_x
2004-04-13 15:39
2004.05.02
DCOM сервер неработает на NT2000 Server





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский