Форум программистов, компьютерный форум, киберфорум
Наши страницы

Visual Basic

Войти
Регистрация
Восстановить пароль
 
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
#1

LisBox со значениями из базы - VB

08.02.2013, 22:23. Просмотров 787. Ответов 12
Метки нет (Все метки)

Всем добрый вечер!
Решил изучить vb6, но пока дела обстоят не очень.
Вообщем нужно сделать список значений из базы mdb в combo или list box'e.
Пробовал делать через dbgrid, но там не нашел события, возникающего после навигации по списку(нужно было получить позицию элемента).
Проект прикрепил.
Буду очень благодарен в решении данного вопроса!!
0
Вложения
Тип файла: zip bd.zip (11.6 Кб, 5 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2013, 22:23
Я подобрал для вас темы с готовыми решениями и ответами на вопрос LisBox со значениями из базы (VB):

выпадающий список со значениями из базы - PHP БД
Как сделать выпадающий список со значениями из базы через базу Mysqli Нашел как сделать через Mysql : <?php /*Соединяеся с базой...

Заполнения поля базы случайными значениями из списка - MS Access
Здравствуйте, у меня такой вопрос, подскажите пожалуйста как можно заполнить одно из полей БД например " имя " случайными именами из...

Макрос: поиск совпадений в ячейках и сравнение их со значениями из базы - VBA
Приветствую. Суть такова: в прикрепленном файле два листа. В столбце "C" на первом листе требуется найти значения, которые совпадают со...

Проверка соответствия пароля из базы данных с введёнными значениями - Delphi БД
есть вот такой код procedure TMainForm.Button1Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.SQL.Text:='SELECT *...

MySQL Заполнение элемента формы значениями из базы данных через PHP - PHP БД
Здравствуйте! Помогите пожалуйста правильно организовать заполнение элемента формы select типа "combobox" значениями из поля таблицы базы...

Записать в LisBox из класса - C#
Есть несколько форм c listbox. Заполнение этого списка везде одинаковый. Не пойму как содать один класс который будет записывать туда...

12
dev.Free
Заблокирован
09.02.2013, 08:04 #2
Вот тебе связка с DBGrid32. Внизу пример на твоем выложенном. Видать делал на примере книг. Data вообще лучше не использовать в качестве рабочего компонента на форме, работать надо на кнопках и прочем. Data в режиме скрытом. И как бы уже еще лучше использовать ADODB подключения. В общем смотри исходники я тебе выкладываю по работе с базами, писал студентам во фрилансе на них научишься. Будут вопросы пиши.

Вот еще примеры:

1. Выгрузка с форматированием: задать диапазон выгружаемых данных
2. Пример записи / чтения с Microsoft Excel в VB
3. Принцип работы SQL запросов в Visual Basic 6.0 (За основу взята Data)
4. Работа с элементом ListView с использованием ADODB - MS Access 2010
2
Миниатюры
LisBox со значениями из базы  
Вложения
Тип файла: rar БАЗА СТО.rar (27.7 Кб, 11 просмотров)
Тип файла: rar Sample.rar (18.2 Кб, 13 просмотров)
Тип файла: rar Часы(1).rar (317.4 Кб, 8 просмотров)
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
09.02.2013, 16:15  [ТС] #3
Спасибо большое! Буду разбираться!
0
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
16.02.2013, 18:58  [ТС] #4
Стал разбираться в файле Sample.rar и у меня возникло 2 вопроса:
1.как получить значения из базы, которого нет в ListView
2. что означает этот код
PureBasic
1
rs.Open SQL, conn, 3, 3
0
dev.Free
Заблокирован
16.02.2013, 19:35 #5
Цитата Сообщение от buhalo88 Посмотреть сообщение
которого нет в ListView
Все делается методом SQL запроса. Если значения нет тогда пишется так:

SQL
1
SELECT * FROM TABLE WHERE NAME LIKE '%Null%'
Где TABLE имя вашей таблицы.
NAME это поиск по строке.

Добавлено через 1 минуту
Цитата Сообщение от buhalo88 Посмотреть сообщение
rs.Open SQL, conn, 3, 3
открытие соединения с параметрами.
0
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
16.02.2013, 22:41  [ТС] #6
То есть, например, если мне нужно получить значение поля выбраной записи, то мне нужно написать такое ?
SQL
1
2
3
4
5
6
7
8
9
10
Private Sub Text4_Change()
DSNName = "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=" & App.Path
    DSNName = DSNName & HomeDir & "\Database.accdb"
    conn.Open DSNName
    SQL = "SELECT * FROM Sample WHERE Отчество LIKE i"
    rs.Open SQL, conn, 3, 3
    Text4.Text = rs(X)
    SET rs = Nothing
    conn.Close
END Sub
Если так, то у меня пишет что "слишком мало параметров, требуется 1"
0
dev.Free
Заблокирован
17.02.2013, 07:59 #7
Цитата Сообщение от buhalo88 Посмотреть сообщение
i
Какое еще (i) там писать надо писать так:

Visual Basic
1
SQL = "SELECT * FROM Sample WHERE Отчество LIKE '%i%'"
0
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
17.02.2013, 12:51  [ТС] #8
inv.DS, я извиняюсь за мою неграмотность, но как вывести в текстовое поле текущее значение, которого нет в списке, но есть в базе. Т. е. при клике на текстовое поле (я к примеру) нужно снова открыть соединение с базой, создать запрос типа
SQL
1
SQL = "SELECT * FROM Sample WHERE Отчество LIKE '%i%'"
и в текстовое поле присвоить значение переменной. Но какой переменной? RS(x), RS(i)?
0
dev.Free
Заблокирован
17.02.2013, 12:52 #9
Имя поля.
0
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
17.02.2013, 14:02  [ТС] #10
Я в растроенных чувствах. У меня ничего не получается. Наверно скоро сниться будет.

SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub ListView1_ItemClick(ByVal Item AS MSComctlLib.ListItem)
FOR i = 1 TO ListView1.ListItems.Count
    IF ListView1.ListItems(i).Selected = TRUE THEN
    DSNName = "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=" & App.Path
    DSNName = DSNName & HomeDir & "\Database.accdb"
    conn.Open DSNName
    SQL = "SELECT * FROM Sample WHERE Отчество LIKE '%i%'"
    rs.Open SQL, conn, 3, 3
        Text1.Text = ListView1.ListItems(i).SubItems(1)
        Text2.Text = ListView1.ListItems(i).SubItems(2)
        Text3.Text = rs("Отчество")
    END IF
NEXT i
    SET rs = Nothing
    conn.Close
END Sub
0
dev.Free
Заблокирован
17.02.2013, 15:00 #11
buhalo88, Выложи сюда свой проект.
0
buhalo88
0 / 0 / 0
Регистрация: 08.02.2013
Сообщений: 19
17.02.2013, 15:16  [ТС] #12
inv.DS, вот
0
Вложения
Тип файла: zip Sample.zip (22.8 Кб, 4 просмотров)
dev.Free
Заблокирован
17.02.2013, 15:28 #13
Я честно вообще не понимаю чего ты добиваешься от кода. Создай на форме 1 кнопку в нее впиши код:

Visual Basic
1
Call Poisk
В код в самый низ вставь это:

Visual Basic
1
2
3
4
5
6
7
8
Sub Poisk()
    DSNName = "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=" & App.Path
    DSNName = DSNName & HomeDir & "\Database.accdb"
    conn.Open DSNName
    SQL = "SELECT * FROM Sample WHERE Отчество LIKE '%Степанов%'"
    rs.Open SQL, conn, 3, 3
        Text4.Text = rs.Fields("Фамилия")
End Sub
Если в базе данных есть хоть 1 фамилия "Степанов", он тебе ее найдет и фамилию выведет в текстовое поле 4.
0
17.02.2013, 15:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.02.2013, 15:28
Привет! Вот еще темы с ответами:

Выделение строки в LisBox другим цветом - Delphi
Всем привет! По умолчанию в ListBox строка выделяется синим цветом. Как изменить этот цвет на какой нибудь другой.

Авто завершение Lisbox + список довольно большой - C# MVC
Всем привет! Ребят есть вот такая задача, подскажите направление, как грамотней реализовать: В табличке есть авторы (id, autor_name),...

Как отобразить список программ в автозагрузке через lisbox(listview)? - C#
Как отобразить список программ в автозагрузке через lisbox(listview)?И какой код для удаления программы в автозагрузки - кнопкой?

Lisbox - отключение функции перехода к похожим по названию элементам коллекции - C#
В Visual Studio создал listbox, в коллекции listbox-а 2 элемента с наименованием "1" и "2". Когда lisbox находится в фокусе при нажатии на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru