Поиск по базе данных Access

Тема в разделе "Другие", создана пользователем Guest_, 23 апр 2005.

Статус темы:
Закрыта.
  1. Guest_

    Guest_ Гость

    Товарищи программисты, помогите плиз, как сделать поиск в vb6 по базе данных, где критерий поиска задаётся из строки.
    Например, по телефонному справочнику. Чтоб я вводил Ива, а он мне выдавал все такие фамилии типа Иванов, Иванченко, Иварян и т.д.

    Data1.RecordSource = "SELECT * FROM Телефоны WHERE [Фамилия] _ LIKE 'Ива*'"

    или как здесь задавать вместо Ива* из строки ввода
     
  2. Barmutik

    Barmutik Гость

    Систаксис запроса указан правильно. Единственное что за знак "_" ?

    При всех остальных выполненных условиях, запрос должен работать ....
     
  3. Guest_

    Guest_ Гость

    Не, "_" это у меня просто не влезло - это как продолжение строчки...
    Мне надо, чтоб можно было задавать это Ива* из программы непосредственно, как переменную.
    Подскажите плз как это сделать этим методом, или укажите другой :lol:
    буду сильно благодарен... :)
     
  4. Barmutik

    Barmutik Гость

    Ну так задfвайте это где-то в Edit-е в программе ... а на момент выполнения запроса просто подставляйте в нужное место и добавляйте знак '*'
     
  5. Xeonic

    Xeonic Гость

    Извините, а можно поподробнее ,я в vb новичек....
     
  6. Barmutik

    Barmutik Гость

    Ну у вас есть форма где пользователель вводит требуемые ему параметры поиска. Вы их оттуда вычитываете и на основании их формируете ему строку запроса .. с помощью которую потом получаете данные...
     
  7. Xeonic

    Xeonic Гость

    Извините Barmutik, что к вам в аську ломился, просто был в отчаянье(завтра сдавать уже надо)...
    А насчёт кода кое-как допёр(при помощи MSDN), так что привожу его далее(может кому понадобится)


    Private Sub Command1_Click()
    Dim nam As Variant
    Dim x As Variant
    x = "SELECT * FROM Телефоны WHERE [Фамилия] LIKE '#$%*'"
    nam = Text1.Text
    Data1.RecordSource = Replace(x, "#$%", nam)
    Data1.Refresh
    End Sub

    корявенько конечно, но может кому пригодится...
     
  8. Barmutik

    Barmutik Гость

    Можно было написать немного проще:

    Код (Text):
    ....
    Data1.RecordSource = "SELECT * FROM Телефоны WHERE [Фамилия] LIKE '" + Text1.Text + "*'"
    Data1.Refresh
    ...
    А насчёт Аськи .. я отходил просто .. не было на месте... так что вот только увидел Ваш запрос...
     
  9. Nadin

    Nadin Гость

    Здраввуйте програММисты!
    При разработке приложения возникает Вдруг после вроде обычных манипуляций ошибка
    Error accessing file.Network connection may been lost
    И почти готовое приложение перестаёт работать!
    Полный крах!!! Помогите кто знает! Заранее благодарна! :(
     
  10. Nadin

    Nadin Гость

    Здраввуйте програММисты!
    При разработке приложения возникает Вдруг после вроде обычных манипуляций ошибка
    Error accessing file.Network connection may been lost
    И почти готовое приложение перестаёт работать!
    Полный крах!!! Помогите кто знает! Заранее благодарна! :(
     
  11. Barmutik

    Barmutik Гость

    Ну вполне возможно что локальная сеть сглюканула .. в чём проблема? Переоткрывайте базу и переустанаваливайте соединение ...
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей