Модераторы: Akella

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вывод номера записи через select 
:(
    Опции темы
Akella
Дата 9.10.2008, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 20
Всего: 329



Так ты, если тебе это интересно, возьми и выполни код с использованием разных способов/технологий доступа: IBX, FibPlus, в разных гридах отобрази данные, используй базы с разными кодировками.

Добавлено через 4 минуты и 21 секунду
С использованием FIBPlus 6.9.5 + EhLib 4.2^
Код

select w.rdb$db_key, w.* from water w;


результат:
user posted image

Обрати внимание на последние цифры. Возможно, что IBExpert это переводит более читабельный формат
PM MAIL   Вверх
vladimir74
Дата 9.10.2008, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 28.11.2006

Репутация: нет
Всего: 3



Цитата(Akella @  9.10.2008,  10:52 Найти цитируемый пост)
Обрати внимание на последние цифры. Возможно, что IBExpert это переводит более читабельный формат 

с таблицей в которую записи записывались одна за другой (типа таблиц справочников) у меня все точно так же. Но вот если в таблицу было записана одна запись, потом несколько записей в другую таблицу, потом редактирование или удаление из первой таблицы (вобщем нормальная работа крупной базы) у меня получилось то что я тебе показал...

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

Ах да, как оказалось я дклал тест на версии 2.0.0 :( руководство опять начало играться... обещали на неделе привести все сервера на одну версию...
--------------------
* В доме помешанного не говорят о миксере.* На любой Ваш вопрос у меня есть любой мой ответ.
PM MAIL   Вверх
Akella
Дата 10.10.2008, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 20
Всего: 329



Цитата(vladimir74 @  9.10.2008,  14:32 Найти цитируемый пост)
мне пока на практике не разу небыла нужна,

и мне тоже, если нужно было вывести в отчёт, то в фастрепорте это реализовано
PM MAIL   Вверх
Regulum
Дата 14.12.2016, 19:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 16.6.2009

Репутация: нет
Всего: 1



Поднимем тему.
Возникла аналогичная задача в Lazarus - сильно глючило свойство TSQLQuery.RecNo в связке с TRxDBGrid.
Сервер Firebird 2.5, соответственно функции ROW_NUMBER() нет.
Покурив форумы, нашел решение через контекстную переменную. Может кому пригодится.
Для запроса топикстартера это будет выглядеть так:
Код

SELECT RDB$GET_CONTEXT('USER_TRANSACTION', 'RowNum') AS RowNumber, DummyField, t.*
FROM MyTable t
CROSS JOIN
   (SELECT RDB$SET_CONTEXT('USER_TRANSACTION', 'RowNum', 
    COALESCE(CAST(RDB$GET_CONTEXT('USER_TRANSACTION', 'RowNum') AS INTEGER), 0) + 1) AS DummyField
    FROM RDB$DATABASE)
WHERE raw_type_id=2


Есть один нюанс - перед запросом нужно обNULLять контекстную переменную 'RowNum'
Код

SELECT RDB$SET_CONTEXT('USER_TRANSACTION', 'RowNum', NULL)
FROM RDB$DATABASE

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Interbase"
Alex

Обязательно указание:

1. Версию InterBase (Firebird, Yaffil)

2. Способа доступа (ADO, BDE, IBX и т.д.)

  • КАК ПРАВИЛЬНО ОФОРМИТЬ КОД - ЗДЕСЬ
  • КАК ПРАВИЛЬНО УКАЗАТЬ ТЕКСТ ОШИБКИ - ЗДЕСЬ
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Firebird, Interbase | Следующая тема »


 




[ Время генерации скрипта: 0.1237 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.