Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
ВнизВопрос про запрос Найти похожие ветки
← →
Сергей Ю. (2004-09-03 20:23) [0]Как можно получить значение идентификатора последней записи? В форуме пробегал вот такой вариант: select @@IDENTITY as IDzakaz, но почему нет имени таблицы в этом запросе? Результатом выполнения запроса является ноль полей :( Где я торможу? (В SQL-е я полный профан, но мне очень надо :))
И еще - после 5-6 раз запуска проги дельфа ругается что нехватает памяти для выполнения запроса. После закрытия/открытия дельфы все в норме опять на 5-6 раз. В чем косяк?
← →
YurikGL © (2004-09-03 21:27) [1]
> Сергей Ю. (03.09.04 20:23)
По поводу 1-го то можно сказать last, но после дейсвия набор данных может неожиданно измениться т.к. другой человек добавит запись.
По поводу второго - где то что-то не освобождаешь.
← →
Fay © (2004-09-03 21:47) [2]>> но почему нет имени таблицы в этом запросе?
Не нужно. Это не Oracle.
← →
Сергей Ю. (2004-09-04 11:40) [3]Тогда как обратиться к результату запроса (select @@IDENTITY as IDzakaz)? Query.FieldbyName["idzakaz"].asinteger говорит что колонка idzakaz несуществует :(
← →
kvit (2004-09-04 12:09) [4]select @@IDENTITY as IDzakaz from Table1
это делается после вставки
← →
kvit (2004-09-04 12:10) [5]При закрытиии программы поставь закрытие конекта с базой
← →
Сергей Ю. (2004-09-06 07:37) [6]Я непонял: надо писать from таблица или нет (см. ответ fay)? И главное - как взять результат выполнения запроса?
← →
sniknik © (2004-09-06 08:52) [7]> надо писать from таблица или нет
не надо, надо только выполнять строго после вставки (чтобы было не ноль а нужное число)
если нужна привязка к таблице (ну вставляеш в несколько таблиц после нужны их автоинкременты) используй IDENT_CURRENT("table_name")
> И главное - как взять результат выполнения запроса?
стандартно как и из просто таблици.
← →
Сергей Ю. (2004-09-06 09:18) [8]Стандартно это как? Так: Query.FieldbyName["idzakaz"].asinteger - неработает :(?
← →
Сергей Ю. (2004-09-06 09:35) [9]Сорри за мою тупость. Все сам разобрался. Всем спасибо.
← →
Ega23 © (2004-09-06 10:26) [10]Как можно получить значение идентификатора последней записи? В форуме пробегал вот такой вариант: select @@IDENTITY as IDzakaz, но почему нет имени таблицы в этом запросе? Результатом выполнения запроса является ноль полей :( Где я торможу? (В SQL-е я полный профан, но мне очень надо :))
Ты неправильно "слышал". Делать надо так:Declare @X int
Insert into Table1 (Col1, Col2, ... , ColN)
Values (Val1, Val2, ... , ValN)
И сразу-же следующей строкой:
Select @X=@@IDENTITY
Более подробно про @@IDENTITY читай в BOL.
И еще - после 5-6 раз запуска проги дельфа ругается что нехватает памяти для выполнения запроса. После закрытия/открытия дельфы все в норме опять на 5-6 раз. В чем косяк?
"Рваные коннекты" остаются. Поди Program Reset часто делаешь. Или Ctrl+F2 (что одно и то же :о))...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c