Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2009, 18:12   #1
Yur@
Пользователь
 
Регистрация: 19.11.2009
Сообщений: 29
По умолчанию Как выбрать последнюю запись в таблице?

Здравствуйте!
Необходимо выбрать последнюю запись в таблице.
Код:
SELECT id FROM client ORDER by id DESC LIMIT 1
Возникает ошибка синтаксиса в предложении ORDER BY
Что не так?
Yur@ вне форума Ответить с цитированием
Старый 15.12.2009, 18:17   #2
rockedit
Форумчанин
 
Аватар для rockedit
 
Регистрация: 18.03.2009
Сообщений: 109
По умолчанию

А не проше использовать процедуру компонента Table (Query) - Last?
к примеру
Код:
Table1.Last;
Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы. Если помог не пожалей "+", это лучшее спасибо
rockedit вне форума Ответить с цитированием
Старый 15.12.2009, 18:49   #3
Yur@
Пользователь
 
Регистрация: 19.11.2009
Сообщений: 29
По умолчанию

Спасибо!
Но как тогда вывести эту запись в DBGrid?
Yur@ вне форума Ответить с цитированием
Старый 15.12.2009, 18:58   #4
rockedit
Форумчанин
 
Аватар для rockedit
 
Регистрация: 18.03.2009
Сообщений: 109
По умолчанию

Просто подключите DBGrid к этому компоненту, и после выполнения этой процедуры активной станет последня в нем запись
Если вам нужна тока одна последня запись то можно так
Запрос
Код:
SELECT *
FROM  Table1
WHERE Table1 IN (
SELECT max(Table1.id)
FROM Table1
);
я в SQL Не спец так что могу предложить тока такой вариант с подзапросом) Но я даже больше чем уверен что есть более простой и рациональный путь
Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы. Если помог не пожалей "+", это лучшее спасибо
rockedit вне форума Ответить с цитированием
Старый 15.12.2009, 18:58   #5
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

У вас на форме должны быть компоненты: Table, DataSource, DBGrid. Настраиваете DBGrid на DataSource, DataSource настраиваете на Table. Когда напишите Table1.Last курсор автоматом перейдет на последнюю запись в таблице. Не сложная наука, да?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 15.12.2009, 19:05   #6
Yur@
Пользователь
 
Регистрация: 19.11.2009
Сообщений: 29
По умолчанию

artemavd
Задача стоит в том чтобы показать ту самую последнюю записть в гриде(вывести её одну).То, что курсор встанет на последнюю записть это и так понятно.
Yur@ вне форума Ответить с цитированием
Старый 15.12.2009, 19:11   #7
rockedit
Форумчанин
 
Аватар для rockedit
 
Регистрация: 18.03.2009
Сообщений: 109
По умолчанию

Смотрите выше, я написал пример запроса.
Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы. Если помог не пожалей "+", это лучшее спасибо
rockedit вне форума Ответить с цитированием
Старый 15.12.2009, 19:13   #8
Yur@
Пользователь
 
Регистрация: 19.11.2009
Сообщений: 29
По умолчанию

rockedit Спасибо, работает!
Но всё же хотелось узнать более рациональный путь
Yur@ вне форума Ответить с цитированием
Старый 15.12.2009, 19:14   #9
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Ну тогда киньте на форму DBEdit и настройте их на тот же DataSource, укажите нужное поле для отображение да и все. В чем проблема-то?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 15.12.2009, 19:23   #10
rockedit
Форумчанин
 
Аватар для rockedit
 
Регистрация: 18.03.2009
Сообщений: 109
По умолчанию

DBedit хорошо, а если в таблице 20 столбцов? что 20 DBEdit ставить если надо всю инфу отобразить?
Цитата:
rockedit Спасибо, работает!
Но всё же хотелось узнать более рациональный путь
да нормальный впринципи способ, полистай книги по SQL я думаю там чтото есть встроенное для перехода по записям
Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы. Если помог не пожалей "+", это лучшее спасибо
rockedit вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как узнать последнюю строку и последний столбец в xls таблице? Аццкий прогер Общие вопросы Delphi 7 06.12.2010 12:58
Как найти последнюю запись в таблице? dsapa Microsoft Office Excel 2 21.07.2009 16:37
Как с помощью JavaScript изменить цвет фона ячеек в таблице,так что бы можно было выбрать цвет из списка Gotessa JavaScript, Ajax 1 09.05.2009 16:05
Как установить курсор на добавленную запись в таблице tarakan1983 БД в Delphi 4 05.04.2009 17:13
Как заблокировать запись в таблице GenGan Общие вопросы Delphi 2 06.03.2009 12:27