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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2016, 14:45   #1
Kef1r
Форумчанин
 
Регистрация: 13.05.2016
Сообщений: 111
Радость Таблица рекордов.

Здравствуйте. У меня есть таблица рекордов, есть очки, все отображается в ней. Вот так это происходит
Код:
form2.fdquery3.sql.text:='update test1 set records=:s where nickname=:f';
form2.fdquery3.parambyname('s').asInteger:=s;
form2.fdquery3.parambyname('f').asString:=form2.fdquery1.FieldByName('nickname').Asstring;
form2.fdquery3.Execute;
где 'records' - это столбец с очками, 'nickname' - столбец с именами игроков, а параметр s - это очки.
Нужно сделать так, чтобы очки обновлялись только тогда, когда побит рекорд. Вот я и не знаю, как это сделать. Т.е. я примерно понимаю, что нужно завести еще одну переменную с очками, например s1 и написать что-то типа
Код:
if s1>form2.fdquery3.FieldByName('records').AsInteger then
form2.fdquery3.parambyname('s1').asInteger:=s1;
Но это неправильно. Вот я и хотел спросить, как это правильно сделать? Было бы неплохо, если бы ответ был с примером, ибо я новичок во всем этом.
Kef1r вне форума Ответить с цитированием
Старый 15.05.2016, 15:37   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Выдерни запросом максимальный рекорд или, например, 10 наибольших. С этим и сравнивай. Если рекорд для каждого юзера свой, то только для него выдерни предыдущий рекорд
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.05.2016, 15:57   #3
Kef1r
Форумчанин
 
Регистрация: 13.05.2016
Сообщений: 111
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Выдерни запросом максимальный рекорд или, например, 10 наибольших. С этим и сравнивай. Если рекорд для каждого юзера свой, то только для него выдерни предыдущий рекорд
У меня рекорд для каждого юзера свой. Можете пожалуйста привести пример запроса. Буду очень благодарен.
Kef1r вне форума Ответить с цитированием
Старый 15.05.2016, 15:59   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

update мог, а select не можешь? Чудеса
Код:
select records from test1 where nickname=:f
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.05.2016, 16:03   #5
Kef1r
Форумчанин
 
Регистрация: 13.05.2016
Сообщений: 111
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
update мог, а select не можешь? Чудеса
Код:
select records from test1 where nickname=:f
С тем запросом мне тоже помогали) спасибо. Буду пробовать
Kef1r вне форума Ответить с цитированием
Старый 15.05.2016, 16:05   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Можно и без предзапроса, а в update еще условие добавить
Код:
update test1 set records=:s where nickname=:f and records<:s
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.05.2016, 16:09   #7
Kef1r
Форумчанин
 
Регистрация: 13.05.2016
Сообщений: 111
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Можно и без предзапроса, а в update еще условие добавить
Код:
update test1 set records=:s where nickname=:f and records<:s
Как же все просто на самом деле. Большое вам спасибо!!!
Kef1r вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тетрис (таблица рекордов) KidBets Общие вопросы Delphi 2 02.05.2014 17:42
Таблица рекордов Zaraaa Помощь студентам 0 24.04.2014 22:39
таблица рекордов в тетрисе! Юлия11 C++ Builder 10 12.06.2013 10:34
Таблица рекордов Ember_ Помощь студентам 4 03.06.2013 15:46
Таблица рекордов glebast Помощь студентам 0 10.06.2012 22:39