Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.03;
Скачать: CL | DM;

Вниз

Вопрос про запрос   Найти похожие ветки 

 
Сергей Ю.   (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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.268 c
14-1094732606
Sancho
2004-09-09 16:23
2004.10.03
memproof.hlp


1-1095612885
ВиТ
2004-09-19 20:54
2004.10.03
Регулярные выражения


3-1094619628
hooch
2004-09-08 09:00
2004.10.03
движки БД


6-1090333677
Jedi
2004-07-20 18:27
2004.10.03
Как выполнить учет Интернета?


4-1093523901
devMaster
2004-08-26 16:38
2004.10.03
как подменить WM_TIME для определенного процесса?