powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск в VB
18 сообщений из 18, страница 1 из 1
Поиск в VB
    #37238805
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
У меня такой вопрос к знающим людям , я пишу программу в VB, вопрос заключается в том что мне нужно сделать поиск .
Ну тоесть у меня есть форма на ней датагрид привязанный к базе , текст бокс и кнопка , нужно ввести в текст бокс информацию и чтобы ей нашло пробовал по разному ,максимум получалась что только выделялась информация , а нужно чтобы оставались в датагрид строки с веденной информацией , пробовал через SQL-запрос , но там вопрос в том как передать в запрос значение из текст бокса .
Заранее спасибо .
...
Рейтинг: 0 / 0
Поиск в VB
    #37238824
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
baevik,

Код: plaintext
select * from tablename where fieldname='" & Text1.text & "'"
...
Рейтинг: 0 / 0
Поиск в VB
    #37239148
TpaBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub Text1_Change()
    If Text1 <> "" Then
        rsGrid1.Filter = "[" & Text1.Tag & "] LIKE '" & IIf(Check1 =  1 , "*", "") & Text1 & "*'"
    Else
        rsGrid1.Filter = adFilterNone
    End If
End Sub

В Text1.Tag можно сохранять DataField колонки, по которой осуществляется фильтрация
Если Check1=1 то совпадения ищутся внутри текста, если Check1=0, то совпадения ищутся сначала строки
rsGrid1 - ADODB.Recordset источник данных грида (DataSource)
...
Рейтинг: 0 / 0
Поиск в VB
    #37239606
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
timtim

timtim
Код: plaintext
select * from tablename where fieldname='" & Text1.text & "'"


При выполнении пишет что синтаксическая ошибка.

Пробовал вот так , при выполнении на форме пишет что вот в этой часте ошибка (= '" & TextBox1.text & "'")
Код: plaintext
1.
2.
SELECT        [регистрационный номер], фамилия, имя, отчество, [дата рождения], адрес, телефон, категория
FROM            граждане
WHERE        (фамилия = '" & TextBox1.text & "'")

Ели допустим я писал вот так
Код: plaintext
select * from граждане where фамилия='" & TextBox1.text & "' 
То ошибку не выдавало но зато в дата гриде после выполнения не чего небыло просто пусто .


Программу я пишу в microsoft visual studio 2008 express edition.
...
Рейтинг: 0 / 0
Поиск в VB
    #37239649
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
baevik,

не знаю как в visual studio 2008
в VBA в Excel 2003 работает
Обрати внимание на регистр символов в textbox
...
Рейтинг: 0 / 0
Поиск в VB
    #37239679
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
timtim,

врядли там с регистрам проблемы .
Просто когда создаю сам запрос мне сразу выдаёт что синтаксическая ошибка .
...
Рейтинг: 0 / 0
Поиск в VB
    #37239791
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
baevikПросто когда создаю сам запрос мне сразу выдаёт что синтаксическая ошибка .
Изначальный вопрос был такой:
baevikпробовал через SQL-запрос , но там вопрос в том как передать в запрос значение из текст бокса .На этот вопрос ответили. Но, судя по всему, ты не знаешь просто синтаксиса выполнения запроса, если я правильно понял, ты просто пишешь в коде "SELECT ..." и думаешь, что он будет работать сам по себе. Во-первых приводи тогда уж текст того, что ты делаешь, во-вторых, VB.NET вообще-то обсуждают в другой ветке форума.
...
Рейтинг: 0 / 0
Поиск в VB
    #37239859
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Нет в коде я не пишу я не дебил )))
Я не понимаю какой тебе текст привести если там всё просто добавляю SQL-запрос потом на кнопку делаю его вызов .
Возможно что я не там ветку создал с этим согласен.
...
Рейтинг: 0 / 0
Поиск в VB
    #37239868
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
baevikНет в коде я не пишу я не дебил )))
Сложно понять квалификацию по обрывочным сообщениям. Люди разные заходят
baevikЯ не понимаю какой тебе текст привести если там всё просто добавляю SQL-запрос потом на кнопку делаю его вызов .
Ну пишет же тебе СИНТАКСИЧЕСКАЯ ОШИБКА.
Стало быть неправильный синтаксис.
Раз не дебил, значит это должны быть ваши разборки с компилятором.
А поскольку ты строку полностью не приводишь, где ошибка (а приводишь только запрос, выдернутый из контекста), помочь тебе не представляется возможным
...
Рейтинг: 0 / 0
Поиск в VB
    #37239894
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Компилятор ругается на вот эту часть.
Код: plaintext
= '" & TextBox1.text & "'"
...
Рейтинг: 0 / 0
Поиск в VB
    #37239910
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
baevikКомпилятор ругается на вот эту часть.
Код: plaintext
= '" & TextBox1.text & "'"

но ведь это часть ЧЕГО-ТО. Это часть программы на VB или часть чего-то еще?
...
Рейтинг: 0 / 0
Поиск в VB
    #37239912
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Это часть запроса , который к базе привязан.
А если ещё конкретней то компилятару не понятна последняя часть вот эта
Код: plaintext
"'"
...
Рейтинг: 0 / 0
Поиск в VB
    #37239974
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
baevikЭто часть запроса , который к базе привязан.
если это не часть кода формы, то приведенный совет не подходит. Надо передавать через параметры запроса.
Я думаю, что надо все же задать вопрос в профильной ветке.
...
Рейтинг: 0 / 0
Поиск в VB
    #37239986
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

нет это не часть кода форм . Спасибо за совет задам.
...
Рейтинг: 0 / 0
Поиск в VB
    #37240083
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
Dim S As String
S = "SELECT [регистрационный номер], фамилия, имя, отчество, [дата рождения], адрес, телефон, категория " & _
    "FROM граждане " & _
    "WHERE (фамилия = '" & Text1.Text & "')"
...
Рейтинг: 0 / 0
Поиск в VB
    #37240103
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VSVLAD,

Как я понял это в коде пограммы написать , а дальше ?
...
Рейтинг: 0 / 0
Поиск в VB
    #37240181
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это как пример к правильному синтаксису. А дальше, ну например хотя бы так:

Это из моего давнего курсовика
Код: plaintext
1.
2.
ADOProducts.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & FilePath(App.Path) & "MARKET.mdb;" 'Привязал к базе Access, если SQL Server - то переделай под себя
ADOProducts.RecordSource = "SELECT * FROM CompProducts WHERE Название LIKE '%" & sText & "%' ORDER BY CompProducts.ID" 'Сам запрос на поиск, у меня использовался оператор LIKE
ADOProducts.Refresh 'Выполняем запрос.
ADOProducts - это компонент ADO ActiveX из VB6, таблица с результатами DataGrid привязана к ADOProducts. Так как у тебя .NET то лучше использовать ADO.NET - там чуть почти совсем по-другому. Но прицип такой же. Соединяемся с базой, отправляем запрос, получаем ответ. Конечно по-правильному, это сделать хранимую процедуру с параметром, и её вызывать и передавать значение TextBox в качестве параметра, опять же лучше в раздел по .NET пойти
...
Рейтинг: 0 / 0
Поиск в VB
    #37240201
baevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VSVLAD,

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


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