Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Заблокирован

Работа с элементом ListView с использованием ADODB - MS Access 2010

23.10.2012, 13:45. Показов 3430. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пример работы с элементом ListView с использованием ADODB и подключение к базе данных MS Access 2010. В примере как уже понятно используется база данных на MS Access 2010, возможно при неустановленном приложении Office 2010 может отсутствовать драйвер MS Access 2010 в ODBC. Не проверял!

Немного кода было заимствовано из темы: Принцип работы SQL запросов в Visual Basic 6.0 (За основу взята Data) уважаемого "Catstail". Кому интересно пользуйтесь

Собственно пример и лист кода:

Visual Basic
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim list As ListItem
Dim X As Long
 
Private Sub Command1_Click()
If Text1.Text = "" And Text2.Text = "" And Text3.Text = "" Then
    MsgBox "Óêàæèòå ïîëíûå äàííûå!", vbCritical
    Exit Sub
End If
    DSNName = "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=" & App.Path
    DSNName = DSNName & HomeDir & "\Database.accdb"
    conn.Open DSNName
     
    SQL = "SELECT * from Sample"
    rs.Open SQL, conn, 3, 3
    rs.AddNew
    rs("Ôàìèëèÿ") = Text1.Text
    rs("Èìÿ") = Text2.Text
    rs("Îò÷åñòâî") = Text3.Text
    rs.Update
    Set rs = Nothing
    conn.Close
    MsgBox "Ñîõðàíåíî óñïåøíî!", vbInformation
    Call LoadData
End Sub
 
Private Sub Command2_Click()
 
If Text1.Text = "" And Text2.Text = "" And Text3.Text = "" Then
    MsgBox "Óêàæèòå äàííûå èç ñïèñêà äëÿ ðåäàêòèðîâàíèÿ!", vbCritical
    Exit Sub
End If
 
    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 [Êîä] =" & ListView1.ListItems(i).Text
            rs.Open SQL, conn, 3, 3
            rs("Ôàìèëèÿ") = Text1.Text
            rs("Èìÿ") = Text2.Text
            rs("Îò÷åñòâî") = Text3.Text
            rs.Update
            Set rs = Nothing
            conn.Close
            MsgBox "Ñîõðàíåíî óñïåøíî!", vbInformation
            Call LoadData
        End If
    Next i
End Sub
 
Private Sub Form_Load()
    With ListView1.ColumnHeaders
        .Add , , "Êîä", 1000
        .Add , , "Ôàìèëèÿ", 2000
        .Add , , "Èìÿ", 2000
        .Add , , "Îò÷åñòâî", 2000
    End With
    LoadData
End Sub
 
Sub LoadData()
 
For i = ListView1.ListItems.Count To 1 Step -1
    ListView1.ListItems.Remove i
Next
    DSNName = "DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=" & App.Path
    DSNName = DSNName & HomeDir & "\Database.accdb"
    conn.Open DSNName
    SQL = "SELECT * from Sample"
    rs.Open SQL, conn, 3, 3
    Do Until rs.EOF
        Set list = ListView1.ListItems.Add(, , rs(0))
        For X = 1 To 3
            list.SubItems(X) = rs(X)
        Next X
            rs.MoveNext
        Loop
            Set rs = Nothing
            conn.Close
End Sub
 
Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
For i = 1 To ListView1.ListItems.Count
    If ListView1.ListItems(i).Selected = True Then
        MsgBox "Âû âûáðàëè: " & ListView1.ListItems(i).SubItems(1) & " " & ListView1.ListItems(i).SubItems(2) & " " & ListView1.ListItems(i).SubItems(3)
        Text1.Text = ListView1.ListItems(i).SubItems(1)
        Text2.Text = ListView1.ListItems(i).SubItems(1)
        Text3.Text = ListView1.ListItems(i).SubItems(1)
    End If
Next i
End Sub
Миниатюры
Работа с элементом ListView с использованием ADODB - MS Access 2010  
Вложения
Тип файла: rar Sample.rar (17.2 Кб, 145 просмотров)
3
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.10.2012, 13:45
Ответы с готовыми решениями:

Импорт данных из Access в Excel с использованием объекта Recordset библиотеки ADODB
'Option Explicit Sub AccessToXL() Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Dim myconn As String Dim TARGET_DB As...

Подключение к базе ACCESS(работа с ADODB.Connection)
Суть вопроса, есть БД ACCESS находится на сервере в папке с доступом для пяти человек, я пишу клиентский модуль для остальных 50 человек...

Вывести access db в ListView vb 2010
Необходимо сделать чтобы при нажатии на кнопку, выводилось содержимое бд как на первом скриншоте Но получается как на второй картинке ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.10.2012, 13:45
Помогаю со студенческими работами здесь

Подключение и работа с базой данных MS Access 2010 в Visual Studio 2010: VB
Доброго времени суток! Уважаемые гуру програмирования, не моглибы Вы помочь начинающему! Задача: Есть база данный на Access 2010,...

Работа с формами в Access 2010
Доброе время суток! Возникла одна небольшая проблемка, помогите ее решить. Есть база компьютеров и комплектующих к ним,как сделать что б...

Работа с полем ввода и надписью в MS Access 2010
Дорогие знатоки access 'а нашего всеми любимого. Подскажите кто-то может подсказать возможно ли в форме ввода добавить две кнопки которые...

MS Access 2010 и google sheets online работа
1) Возможно ли сделать автоматически обновляемые данные из гугл таблиц в аксесе 2010 ? 2) Возможна ли реализовать выгрузку данных с...

Работа с базой данных Access с помощью VB NET STUDIO'2010
подскажите. ПОЖАЛУЙСТА, где можно скачать пример работы с базой данных Access с помощью VB NET STUDIO'2010 где было бы...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru