powered by simpleCommunicator - 2.0.28     © 2024 Programmizd 02
Map
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Поиск по первым буквам в любом регистре
12 сообщений из 12, страница 1 из 1
Поиск по первым буквам в любом регистре
    #39949404
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте! Подскажите пожалуйста, я делаю БД по учету книг. И у меня никак не получается поиск сделать по названиям книг и также по именам авторов. Он ищет по первым буквам, но только в нижнем регистре, а преподаватель просит чтобы искал в любом регистре. Вот мой код и прикладываю скриншоты.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
dw_list.SetTransObject(sqlca);
dw_list.Retrieve();
string str_search = "";
string name_table = "(";
string str_end = "%')";

//поиск по названию статьи

if (sle_Name_Article.Text <> '') then
	str_search += name_table + "lower(article_name) LIKE '" + sle_Name_Article.text + str_end;
end if;	

//Поиск по именам автора	

if (sle_Name_Author.text <> '') then
	if (str_search <> '') then
		str_search += " and " + name_table + "lower(all_name_author) LIKE '" + sle_Name_Author.text + str_end;
	else
		str_search += name_table + "lower(all_name_author) LIKE '" + sle_Name_Author.text + str_end;
	end if;
else
	if (str_search <> '') then
		str_search += " and " + name_table + "lower(all_name_author) LIKE '"+ str_end;
	end if;
end if;

dw_list.setfilter(str_search); 
dw_list.filter();
dw_1.setfilter(str_search); 
dw_1.filter();
dw_1.ScrollToRow(1);
dw_1.setfocus()






...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39949405
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39949432
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала надо привести все при поиске к одному регистру
Код: sql
1.
"lower(all_name_author) LIKE '" + lower(sle_Name_Author.text) + str_end;


И
Код: sql
1.
lower(all_name_author) LIKE '" + lower(sle_Name_Author.text) + str_end;
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39949436
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001,

так, это сделала. Теперь ищет допустим ту же самую статью, когда набираю Formal с большой буквы и ищет с маленькой formal. А вот там есть статья, у которой все большие буквы FORMAL, а здесь тогда как?
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39949918
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это должно работать в любом случае
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39949979
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Регистр и колонки и условия приведен к одному положению - нижнему. В этом случае регистр не будет учитываться и скрипт будет работать корректно
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39950053
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001,

ну а вот допустим у меня есть две книги с одинаковыми названиями, одна с большой буквы начинается, а другая только одни большие буквы. И если я ввожу одни большие буквы, то должна найтись только одна книга. Я вот скриншот прикрепила, как у меня ищется,это правильно или нет.
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39950085
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если убрать "lower", то так и будет
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39950088
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Riska,

если я убираю lower, то он не находит названия книг, если я ввожу в нижнем регистре
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39950104
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я так понимаю, что поиск теперь правильно работает?
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39950214
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PolinaB
а преподаватель просит чтобы искал в любом регистре.

Теперь так и работает, находятся обе книги независимо от регистра
...
Рейтинг: 0 / 0
Поиск по первым буквам в любом регистре
    #39950226
PolinaB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
spas2001,

да, что-то я немного затормозила и запуталась. Спасибо большое за помощь!
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Поиск по первым буквам в любом регистре
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]