Форум: "Базы";
Текущий архив: 2002.09.26;
Скачать: [xml.tar.bz2];
ВнизНомер записи Найти похожие ветки
← →
desha (2002-09-01 12:40) [0]Мастера! Не ужели никто не подскажет, как узнать номер записи НД? Recno не работает для Query и в хелпе об этом написано. А как же быть?
← →
sniknik (2002-09-01 12:51) [1]Вряд ли кто подскажет. IB это как я понимаю тапа MSSQL-я sql server а в них номер записи не поддерживается (сервер сам решает куда запись положить).
А вот как же быть? можно. Обычно вставляют дополнительное поле индефикатор (автоикремент) это и будет номер по порядку.
и еще уточни чего тебе надо номер записи НД или всетаки номер в выборке Query.
← →
desha (2002-09-01 13:12) [2]To shiknik
Первоначально надо было первое. Теперь бы просто узнать номер в выборке Query.
← →
Anatoly Podgoretsky (2002-09-01 13:28) [3]Какую смысловую и полезную нагрузку несет этот номер
← →
sniknik (2002-09-01 14:48) [4]Номер в выборке, не раз обсуждалось сдесь и я видел довольно простое решение именно для IB (чтото вроде переменной в селекте которая автоикрементная но IB я не знаю а MSSQL такого нет, или тоже не знаю :-( ). И еще было через вычисляемое поле (с извращениями). Но довольно давно видел уже наверно ушло в дайджесты (архив форума) самому искать неохота. :-)
а действительно зачем это тебе? если для репорта то там переменную можно вставить а в гриде... ? ну непонятно.
← →
desha (2002-09-01 20:33) [5]Просто нужно спозиционироваться на нужную запись в таблице. Про запись ничего не известно, кроме ее номера в выборке.
← →
Anatoly Podgoretsky (2002-09-01 20:43) [6]Для этого доджен быть или первичный ключ или уникальный индекс
← →
sniknik (2002-09-01 21:05) [7]SELECT (Select Sum(1) From Products AS t1 Where t1.ProductID<= t2.ProductID) AS mynr, t2.* FROM Products AS t2
извини но это для MSSQL класический способ пойдет для IB? хрен знает. ProductID здесь именно первичный ключ.
← →
sniknik (2002-09-01 21:19) [8]Про запись ничего не известно кроме ее номера в выборке --?
не боишся промахнутся? надо бы поточней позиционироватся. а то две последовательные выборки могут вернуть строки с различной нумерацией. лутше поставь на таблицу автоинкрементное поле и по нему определяйся поточней будет.
← →
Shtukatur (2002-09-02 07:02) [9]create table #rank
( rank int indentity noy null,
id int
)
insert #rank
select ID_Record from Records order by ...
select rn.rank, ...
from Records rc
join #rank rn on rn.ID = rc.ID_Record
order by rc. ..
drop table #rank
rn.rank - это номер записи, но это гемор
лучше используй TClientDataSet, там RecNo работает.
← →
Praco (2002-09-02 09:08) [10]Самое простое решение :
sniknik © (01.09.02 21:05)
Shtukatur © (02.09.02 07:02) - работать не будет, в IB нет временных табличек.
Для IB самое быстрое решение - хранимая процедура For Select и в блоке Do увеличение инкрентной переменной.
desha © (01.09.02 20:33)
"Просто нужно спозиционироваться на нужную запись в таблице. Про запись ничего не известно, кроме ее номера в выборке."
Не применяй номер записи в выборке для ее поиска в базе - это гарантированный путь к ошибкам. Однозначно найти запись можно только по потенциальному ключу.
← →
desha (2002-09-02 12:27) [11]Спасибо, это уже и сам понял. Только не понятно, зачем для tQuery есть RecordCount и оно работает, но RecNo тоже ест, но не работает даже документально....
← →
ЮЮ (2002-09-03 03:33) [12]>Только не понятно, зачем для tQuery есть RecordCount и оно работает, но RecNo тоже ест, но не работает даже документально
Потому что RecordCount - это объективная реальность, количество записей, удовлетворяющих условию запроса.
← →
dimanew (2002-09-03 07:46) [13]можно сделать так:
Обьявляешь класс TMyGrid = class (TDBGrid)
Затем где-нибудь такое:
TFriendGrid(Dbgrid).DataLink.ActiveRecord
← →
Basic (2002-09-04 12:37) [14]Можешь попробовать еще вариант, в книжке видел, но сам не пробовал.
Делай связь с основной бд, и с нее бери реальный номер
Query1.GotoCurrent(Table1);
showmessage(inttostr(Table1.Recno));
← →
Fareader (2002-09-04 14:08) [15]Ставим FIBPlus и юзаем RecNo (для конкретного НД), а также получаем еще много других вкусностей
← →
Anatoly Podgoretsky (2002-09-04 14:20) [16]ЮЮ © (03.09.02 03:33)
Добавим "отфетченных" на данный момент
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.09.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c