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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2010, 18:25   #1
MikaS007
Пользователь
 
Регистрация: 03.06.2010
Сообщений: 22
По умолчанию Поиск в БД связь с Аксесс

имеется кнопка Button1 и Edit1 после написания в едите жмём кнопку и появляются результаты поиска можно в мемо...мой код не работает

ADOQuery1.Active:=False;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('SELECT * FROM Ученики WHERE Шифр LIKE "%'+Edit1.Text+'%"');
ADOQuery1.Active:=True;
MikaS007 вне форума Ответить с цитированием
Старый 09.06.2010, 04:52   #2
rdama
Форумчанин
 
Аватар для rdama
 
Регистрация: 25.07.2009
Сообщений: 533
По умолчанию

Пожалуйста переназови все таблицы и поля на английском.
Не надо пользовать русский.
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA)
rdama вне форума Ответить с цитированием
Старый 09.06.2010, 07:38   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
ADOQuery1.SQL.Add('SELECT * FROM Ученики WHERE Шифр LIKE  '+QuotedStr('%'+Edit1.Text+'%');
Цитата:
Не надо пользовать русский.
Глупости какие...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.06.2010, 09:47   #4
rdama
Форумчанин
 
Аватар для rdama
 
Регистрация: 25.07.2009
Сообщений: 533
По умолчанию

Ну а потом. Как жить то? А если придется пользовать MySQL, SQLite, MSSQL, Oracle там как без русского то?

И кстати как по мне так называть таблицы и поля в них на русском языке это как раз таки глупости. Которые потом только будут усложнять поиск и отлов ошибок.
Но мы с тобой Stilet опять от темы... :-)
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA)
rdama вне форума Ответить с цитированием
Старый 09.06.2010, 11:08   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А если придется пользовать MySQL, SQLite, MSSQL, Oracle там как без русского то?
Все мои БД на русском. Глюков ни в Оракле ни в Сиквеле не ловил ниразу.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.06.2010, 11:25   #6
rdama
Форумчанин
 
Аватар для rdama
 
Регистрация: 25.07.2009
Сообщений: 533
По умолчанию

Ну тогда каждый при своем. :-)
Маразм крепчал. Еноты пели...
R-style Dataknowlege Access Member Account (RDAMA)
rdama вне форума Ответить с цитированием
Старый 09.06.2010, 15:33   #7
MikaS007
Пользователь
 
Регистрация: 03.06.2010
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код:
ADOQuery1.SQL.Add('SELECT * FROM Ученики WHERE Шифр LIKE  '+QuotedStr('%'+Edit1.Text+'%');
Глупости какие...
не работает(( тупо ничё не делает и как ещё прописать чтоб в мемо писал результаты поиска
MikaS007 вне форума Ответить с цитированием
Старый 09.06.2010, 16:16   #8
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Код:
ADOQuery1.close;
ADOQuery1.SQL.Text:='SELECT * FROM Ученики WHERE Шифр LIKE  '+QuotedStr('%'+Edit1.Text+'%');
ADOQuery1.open;
Memo1.Lines.Clear;
While not ADOQuery1.Eof do
begin
Memo1.Lines.Add(ADOQuery1.Fields.FieldByName('имя поля данные с которого хотите добавить в мемо').asstring);
ADOQuery1.next;
end;
vovk вне форума Ответить с цитированием
Старый 09.06.2010, 16:25   #9
Dark_Spirit
Форумчанин
 
Аватар для Dark_Spirit
 
Регистрация: 05.02.2009
Сообщений: 324
По умолчанию

Цитата:
не работает(( тупо ничё не делает и как ещё прописать чтоб в мемо писал результаты поиска
если поле "Шифр" не текстовое тогда наверное будет лучше написать запрос таким образом:
Код:
 ADOQuery1.SQL.Add('SELECT * FROM Ученики WHERE Шифр='+inttostr(Edit1.Text);
для добавленя в memo:
Код:
 while not(adoquery1.eof) do
  begin
   memo1.lines.add(adoquery1.fieldbyname('имя_нужного_поля').value);
   adoquery1.next;
  end;
апаздал
Тяжело быть бестолковым.....

Последний раз редактировалось Dark_Spirit; 09.06.2010 в 16:30.
Dark_Spirit вне форума Ответить с цитированием
Старый 09.06.2010, 16:28   #10
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Цитата:
Сообщение от Dark_Spirit Посмотреть сообщение
если поле "Шифр" не текстовое тогда наверное будет лучше написать запрос таким образом:
Код:
 ADOQuery1.SQL.Add('SELECT * FROM Ученики WHERE Шифр='+inttostr(Edit1.Text);
для добавленя в memo:

Код:

while not(adoquery1.eof) do
begin
memo1.lines.add(adoquery1.fieldbyna me('имя_нужного_поля').value);
adoquery1.next;
end;
подумайте ещё раз
И ещё даже если написать Strtoint ничего хорошего из этого не выйдет мы же не параметр используем, если поле числовое то просто можно кавычки убрать

и что вы имели ввиду тут
Цитата:
not(adoquery1.eof)
?
просто пробел не поставили? или я чтото недопонял?

Код:
ADOQuery1.SQL.Text:='SELECT * FROM Ученики WHERE Шифр = '+Edit1.Text;

Последний раз редактировалось vovk; 09.06.2010 в 16:38.
vovk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связь БД Аксесс с Делфи Desm БД в Delphi 2 24.05.2010 15:17
Обратите внимание! аксесс в дельфи. Милана666 Помощь студентам 0 23.05.2010 19:57
База данных аксесс Игорь11071990 Microsoft Office Access 1 20.01.2010 20:33
БД Аксесс Игорь11071990 Microsoft Office Access 1 04.12.2009 20:14
таблица в аксесс MAcK Microsoft Office Access 1 11.06.2008 09:18