Поиск,сравнение в базе данных
имеется - DB test ,таблица friend, поля fam,name,city
кнопка - command1
текстовое поле - Name
задача- при нажатии кнопки должно провериться есть ли текст введённый в Text1 в БД (таблица friend,поле name).Если такая запись существует тогда выводится окно сообщений "Имя найдено", если нет такой записи - сообщение "Имя не найдено" .
Использовать можно и DAO и ADO.
В принципе я понимаю что это элементарная вещь,но у меня почему то не получается
:( ...
помогите,пожалуйсто,с такой задачкой (VB 6.0,DB создана в VisData):
имеется - DB test ,таблица friend, поля fam,name,city
кнопка - command1
текстовое поле - Name
задача- при нажатии кнопки должно провериться есть ли текст введённый в Text1 в БД (таблица friend,поле name).Если такая запись существует тогда выводится окно сообщений "Имя найдено", если нет такой записи - сообщение "Имя не найдено" .
Использовать можно и DAO и ADO.
В принципе я понимаю что это элементарная вещь,но у меня почему то не получается
:( ...
/////////////////(((((((((((((((((
во первых надо проциклить adodc по полям
пример
With Adodc1.Recordset
.MoveFirst
Do Until .EOF
If .Fields("name").Value = Text1.Text Then
MsgBox "Пиши чье хочешь"
End If
.MoveNext
Loop
End With
а лучше всего ввести SQL код в recordset
ПРОГРАММНО использую Command DE
"SELECT * FROM friend WHERE NAME LIKE '" & Text1.Text & "'"
/////////////////(((((((((((((((((
во первых надо проциклить adodc по полям
пример
With Adodc1.Recordset
.MoveFirst
Do Until .EOF
If .Fields("name").Value = Text1.Text Then
MsgBox "Пиши чье хочешь"
End If
.MoveNext
Loop
End With
сделал так же,один раз запустилось ... и всё :( , при следующих попытках выдаёт сообщение: Run time error 91.
Object variable or With block variable not set.
в свойствах Adodat1 RecordSours пишу- select name from friends
У меня на форме находится несколько Ado контролеров,это не может являться проблемой ?
по второму варианту не совсем понял ,sql запрос писать в свойствах AdoDC ? и как сформулировать тогда IF,THEN, т.е как узнать найдено значение или нет ?
Что тебе нужно сделать
1. Вставь новый Adodc1 в свою форму, назови его ADOSQL
2. Вставь в форму контроль DataGrid1 (если нет на панели поищи в Components
“Microsoft DataGrid control 6.0(OLEDB)”
3. DataGrid1 выбери в окне свойства DataSource ADOSQL
4. Открой закладку (через properties adodc) GENERAL <source of connection> задай свои параметры связи с базой
5. Потом закладка <RecordSuorce> выбери из списка Command Type <1-adCmbText>
6. Введи в окно Command Text (SQL)
select * from friend
7. Вставь в форму Кнопку Command1 и текстовое поле Text1
8. Введи этот код в событие кнопки клик
‘//////////////////////(((((((((((((((((((((((
With ADOSQL
.RecordSource = "select * from friend where name=’" & Text1.Text & “’”
.Refresh
End With
‘//////////////(((((((((((((((((
1. Запусти форму если в сетке DataGrid1 появятся твои данные то процесс пошел
2. Введи в поле Text имя для поиска и нажми Кнопку Command1
3. Если такое имя есть то сетка DataGrid1 покажет тебе данные связанные с этим именем
PS
Если твоё поле данных name при создании базы было тип был текстовым то все будет в порядке