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

Вниз

Проверка на последнюю запись   Найти похожие ветки 

 
zzz   (2008-09-04 16:27) [0]

Удалено модератором
Примечание: спам


 
stas ©   (2008-09-04 16:30) [1]

чем определяется порядок?


 
Правильный$Вася   (2008-09-04 16:31) [2]

в бд нет записей
в таблице нет понятия "первый/последний"
все порядки определяются только запросами с ORDER BY


 
zzz   (2008-09-04 16:32) [3]

порядок определяется в SQL-запросе


 
Ega23 ©   (2008-09-04 16:33) [4]


> порядок определяется в SQL-запросе


А что в таком случае "текущая запись"?


 
Правильный$Вася   (2008-09-04 16:36) [5]


> порядок определяется в SQL-запросе

тогда почему текущая запись в БД?
запрос - это не БД, он набор данных возвращает
Query.EOF, BOF


 
stas ©   (2008-09-04 16:36) [6]

select top 1 myfield from mytable order by myfield1 ?


 
fellow   (2008-09-04 16:36) [7]


> Как проверить является ли текущая запись в БД последней,
>  первой


только по полю такому как: "автосчетчик" с уникальными значениями при условии что не будет изменятся порядок уникальности.. во закрутил :)


 
Правильный$Вася   (2008-09-04 16:40) [8]


> только по полю такому как: "автосчетчик"

глупости
а если у меня соединение 10 таблиц, в каждой из которых свой "автосчетчик"?

> select top 1

субд не указана, так что бесполезно


 
Сергей М. ©   (2008-09-04 16:41) [9]


> порядок определяется в SQL-запросе


SQL-запрос позвращает записи из сформированного набора данных, а не из БД.

На кл.стороне текущая запись в открытом непустом НД является :

- первой, если при обращении к предыдущей записи НД сигналит о состоянии BOF
- последней, если при обращении к следующей записи НД сигналит о состоянии EOF


 
stas ©   (2008-09-04 16:41) [10]

скорее всего автору нужно
Правильный$Вася   (04.09.08 16:36) [5]


 
fellow   (2008-09-04 16:47) [11]


> а если у меня соединение 10 таблиц, в каждой из которых
> свой "автосчетчик"?


клиент сам должен определить главную таблицу по которой он решит какой автосчетчик последний..


 
fellow   (2008-09-04 16:48) [12]


> автосчетчик последний..


пардон...

ГЛАВНЫЙ


 
Johnmen ©   (2008-09-04 16:50) [13]


> клиент сам должен определить главную таблицу по которой
> он решит какой автосчетчик последний..

"Автосчетчиков" может не быть. Так что не надо бреда...


 
fellow   (2008-09-04 16:54) [14]


> Johnmen ©   (04.09.08 16:50) [13]



> "Автосчетчиков" может не быть. Так что не надо бреда...


так покажите выход из ситуации.

p.s. я написал вариант решения..


 
Медвежонок Пятачок ©   (2008-09-04 16:57) [15]

если при некст возникает еоф, значит последняя.
если при приор боф, то первая.


 
Johnmen ©   (2008-09-04 16:58) [16]


> fellow   (04.09.08 16:54) [14]
> так покажите выход из ситуации.

Его уже сказали неоднократно. [5], [9]


 
Правильный$Вася   (2008-09-04 16:59) [17]


> клиент сам должен определить главную таблицу по которой
> он решит какой автосчетчик последний..

хочу поглядеть это для картезиана


 
fellow   (2008-09-04 17:19) [18]

ну если [5] и [9]?
тогда Query.first и Query.last

не перебирая все для eof


 
fellow   (2008-09-04 17:30) [19]

p.s.
это если нужно сразу на них попасть


 
Медвежонок Пятачок ©   (2008-09-04 17:43) [20]

а чем таким волшебным отличаются первая и последняя записи от других, что их потребовалось отличать?


 
Anatoly Podgoretsky ©   (2008-09-04 19:42) [21]

Count(*) from table

и если результат равен единице, то запись последнея.


 
Правильный$Вася   (2008-09-04 20:39) [22]

ну и шуточки у вас, дядя Толя
с таким же успехом можно спросить у пользователя "а не на последней ли записи мы сейчас торчим?"


 
Anatoly Podgoretsky ©   (2008-09-04 21:04) [23]

> Правильный$Вася  (04.09.2008 20:39:22)  [22]

А я что виноват, что автор так поставил вопрос, а не так как ты. На его вопрос другого ответа нет, или запись последнея или еще есть и другие.


 
palva ©   (2008-09-04 21:33) [24]

Ну так за то, чтоб не последняя...


 
oldman ©   (2008-09-04 21:52) [25]


> fellow   (04.09.08 17:19) [18]
> ну если [5] и [9]?
> тогда Query.first и Query.last


Наивный...
С чего ты взял, что последняя запись в Квери есть физичеки последняя в БД?


 
stas ©   (2008-09-04 22:03) [26]

fellow   (04.09.08 17:19) [18]
зачем перебирать? ему надо узнать первая или нет
if adoquery.bof then showmessage ("данная запись первая в полученом наборе данных")


 
DVM ©   (2008-09-04 22:09) [27]


> и если результат равен единице, то запись последнея.

:)))))


 
DVM ©   (2008-09-04 22:10) [28]

У некоторых принято говорить "крайняя" :)


 
Правильный$Вася   (2008-09-04 22:16) [29]


> или запись последнея или еще есть и другие

я бы вставил "или пока еще есть другие"
но быстро закончатся
;)


 
oldman ©   (2008-09-04 22:18) [30]


> zzz   (04.09.08 16:32) [3]
> порядок определяется в SQL-запросе


Предположим ты узнал, что запись N есть последняя в БД.
А зачем, можно спросить?


 
palva ©   (2008-09-04 23:43) [31]


> А зачем, можно спросить?

Значит, пора покупать новую БД. Старая уже на исходе.


 
oldman ©   (2008-09-05 00:11) [32]

Удалено модератором


 
fellow   (2008-09-05 14:53) [33]


> oldman ©   (04.09.08 21:52) [25]
>
> > fellow   (04.09.08 17:19) [18]
> > ну если [5] и [9]?
> > тогда Query.first и Query.last
>
>
> Наивный...
> С чего ты взял, что последняя запись в Квери есть физичеки
> последняя в БД?


я не говорил что в БД

я так думаю чтобы узнать, что она крайняя в БД нужно поле "счетчик" - иначе вроде никак


> if adoquery.bof then showmessage ("данная запись первая
> в полученом наборе данных")


вот именно, в наборе данных, но думается мне что автору нужно в БД :)


 
evvcom ©   (2008-09-05 15:05) [34]

Во глумеж! :O)
АП плодисменты :)


 
MsGuns ©   (2008-09-12 16:42) [35]

var
 s: string;
begin
 s := "Запись посерединке";
 with ADODataSet1 do
    if RecNo=1 then  
       begin
         s := "Запись 1-я"
         if RecordCount=1 then s := s+" и единственная"
       end
   else
       if RecNo=RecordCount then s := "Запись последняя";
 ShowMessage(s);
end;



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

Форум: "Начинающим";
Текущий архив: 2008.10.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.006 c
4-1198242400
Dim07
2007-12-21 16:06
2008.10.19
Готовность принтера


2-1221128034
vegarulez
2008-09-11 14:13
2008.10.19
Вопрос про stream.


3-1208297845
AlexeyMir
2008-04-16 02:17
2008.10.19
IbQuery + OnUpdateRecord


2-1220850278
FIL-23
2008-09-08 09:04
2008.10.19
Отправка смс


2-1221068460
YoungerDelphist
2008-09-10 21:41
2008.10.19
SQL





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский