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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2013, 00:26   #1
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию Не проходит запрос

нужно в dbgrid вывеси определенную инфу, при работе кода выскакивает 1 строка - пустая
вот как я это реализовал
Код:
// вывод заявок пользователя
    SQLReadQuery1.SQL.Text := 'SELECT * FROM request WHERE login=' +
      QuotedStr(Edit1.Text) + 'OR login=' + QuotedStr('RE:' + Edit1.Text);
    // обновление записей в таблице на форме
    SQLReadQuery1.Close;
    SQLReadQuery1.Open;
    ClientDataSet1.Close;
    ClientDataSet1.Open;
вроде все правильно, но не хочет работать, поделитесь соображениями...
megostudent вне форума Ответить с цитированием
Старый 29.05.2013, 06:32   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
поделитесь соображениями
Делюсь:

1) Нет таких данных в таблице
2) Кодировка таблицы не совпадает с кодировкой в Edit1

И вообще, что хоть за СУБД?
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 29.05.2013, 10:58   #3
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

MySQL
Данные в таблице есть
а вот если кодировка не совпадает, то по ходу вывело бы одни знаки "?"
megostudent вне форума Ответить с цитированием
Старый 29.05.2013, 11:35   #4
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

так попробуй
Код:
  SQLReadQuery1.Close;
  SQLReadQuery1.SQL.Text := 'SELECT * FROM request WHERE UPPER(login) = UPPER(:login) OR UPPER(login) = UPPER(''RE:''||:login)';
  SQLReadQuery1.Parameters.ParamByName('login').Value := Edit1.Text;
  SQLReadQuery1.Open;
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 29.05.2013, 11:35   #5
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

так попробуй
Код:
  SQLReadQuery1.Close;
  SQLReadQuery1.SQL.Text := 'SELECT * FROM request WHERE UPPER(login) = UPPER(:login) OR UPPER(login) = UPPER(''RE:''||:login)';
  SQLReadQuery1.Parameters.ParamByName('login').Value := Edit1.Text;
  SQLReadQuery1.Open;
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 29.05.2013, 11:49   #6
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

у меня стоит задача вывести заявки пользователя, то есть строку с его логином или ответом на его логин (RE. После авторизации юзера в программе его ник остается в поле edit1, вот в запросе на выборку я и использую его ник из edit1. Тип если есть в столбце логин текст из edit1, то эта строка должна показаться в dbgrid
megostudent вне форума Ответить с цитированием
Старый 29.05.2013, 12:01   #7
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

неверный подход к реализации. в поле login должен быть всего лишь идентификатор (ID) пользователя, который ссылается на таблицу пользователей (напр. users). а в программе нужно не логин его запоминать при автороизации, а его ID.
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 29.05.2013, 12:18   #8
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

так в таблице с заявками нету столбца id как же тогда будет выведена нужная запись
megostudent вне форума Ответить с цитированием
Старый 29.05.2013, 12:25   #9
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

в том то и беда что нету, а должна была бы быть вместо login
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 29.05.2013, 12:26   #10
megostudent
Форумчанин
 
Регистрация: 31.12.2010
Сообщений: 320
По умолчанию

вот какие я сделал таблицы, как-то же и по ним можно сделать по ходу...
Таблица юзеров
Таблица заявок
megostudent вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Synapse не проходит запрос Bax77 Общие вопросы Delphi 0 12.02.2013 19:56
пост запрос не проходит megostudent Работа с сетью в Delphi 13 04.02.2013 10:13
Не проходит компановка Artemprodigy Visual C++ 1 27.10.2010 23:53
не проходит пост - запрос.... Kitt Работа с сетью в Delphi 4 13.05.2008 20:38