Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69

Проблемы с ADO при подключении базы данных в Visual Basic 6

11.12.2018, 08:57. Показов 1878. Ответов 29

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток! Как-то уже обращался к форумчанам с подобной проблемой, но не нашёл отклика. Проблема следующая: в VB6 создаю форму, при помощи которой я вывожу базу данных Access в DataGridView по выбору через CommonDialog. Без использования CommonDialog по аналогичному алгоритму база данных беспроблемно отображается в Grid. При попытке использовать CommonDialog для работы с множетсвами баз возникает ADO-ошибка, связанная с построением SQL-запроса(как я предполагаю).
Ниже приведу код, который я использую(если в нём увидите синтаксические ошибки - не обращайте внимания : я переехал на другой системник и ещё не успел поставить Basic , код набирал в Блокноте). Заранее спасибо за помощь!

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
Option Explicit
Dim strRequest As String
 
Private Sub Combo1_Click()
Dim strRequest As String
 
strRequest = " Select * FROM " & Combo1.List(Combo1.ListIndex & " "
 
End Sub
 
 
Private Sub Text1_DblClick()
 
CommonDialog1.ShowOpen
Text1 = CommonDialog1.FileName
Adodc1.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;Data Source = " & Text1 & "; Persist Security Info = False;"
Combo1.Enabled = True
Adodc1.RecordSource = strRequest
Adodc1.CommandType = 4
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1.Recordset
DataGrid1.Refresh
End Sub
Миниатюры
Проблемы с ADO при подключении базы данных в Visual Basic 6  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2018, 08:57
Ответы с готовыми решениями:

Выгрузка базы данных Excel через ADO в GridView Visual Basic 6
Доброго времени суток! При помощи товарища с данного форума я уже решил проблему выгрузки базы данных Microsoft Access через ADO на форму в...

Базы Данных в Visual Basic
Решил изучить Visual Basic 10. Я начинающий программист до этого изучал С и решил перейти к объектно - ориентированому программированию. А...

Visual Basic и Базы Данных - поиск
Сколько ни бьюсь, но (какой я, похоже,ламер!) никак не могу найти достойного ответа с пояснениями - КАК НАЙТИ НУЖНУЮ ЗАПИСЬ В БАЗЕ ДАННЫХ...

29
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
11.12.2018, 12:16
А какое значение у Text1?
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
11.12.2018, 13:24  [ТС]
Catstail, Text 1 присваивается путь к файлу Access, который я выбираю через CommonDialog
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
11.12.2018, 14:45
А в нем пробелов нет?
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
12.12.2018, 08:39  [ТС]
Catstail, синтаксически код правильный, иначе Basic не пропустил бы ошибку
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
12.12.2018, 09:58
tomhardy96, речь не о синтаксисе. Если строка Text1 содержит пробелы - могут возникнуть проблемы.
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
12.12.2018, 10:08  [ТС]
Catstail, ты имеешь ввиду пробел между Text и 1? Там нет пробелов, это и на приложенном скрине видно
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
12.12.2018, 11:03
tomhardy96, я имею в виду случай, когда Text1="Рабочий стол\моя база\..."
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
12.12.2018, 11:25  [ТС]
Catstail, или я плохо соображаю, или ты имеешь ввиду пробелы после знака =. Так Бэйсик же автоматически ставит пробелы с обеих сторон знака при переходе на следующую строку
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
12.12.2018, 11:26
tomhardy96, пробелы в имени файла, который ты выбираешь! Рабочий_стол\Имя_базы <- пробелы на месте подчерков!
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
13.12.2018, 08:30  [ТС]
Catstail, исключено. Я изначально пробовал просто выгружать конкретную базу данных с указанием в RecordSource имени таблицы. Всё работало((
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
13.12.2018, 10:08
А если в Text1 просто записать путь (без Common Dialog)?
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
13.12.2018, 10:27  [ТС]
Catstail, Common Dialog мне просто необходим для приложения, чтобы выбирать на диске нужный файл с базой данных.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
13.12.2018, 12:00
Я спрашиваю, что будет, если путь задать явно.
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
13.12.2018, 13:35  [ТС]
Catstail, я сделал как ты посоветовал: убрал строку Text1, задал явно путь к файлу в DataSource. На выходе ничего не поменялось
0
 Аватар для UBUNTU
352 / 213 / 42
Регистрация: 04.02.2015
Сообщений: 1,344
13.12.2018, 13:45
tomhardy96, Подключение к базе данных через ADODB (статья)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
13.12.2018, 13:50
Цитата Сообщение от tomhardy96 Посмотреть сообщение
На выходе ничего не поменялось
- а при каком раскладе код работал?
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
14.12.2018, 15:49  [ТС]
Catstail, Catstail, работал в случае, когда я вручную в RecordSource указывал имя таблицы в файле Access

Добавлено через 5 минут
UBUNTU, такой подход я давно пробовал, но он не подходит к моим задачам : в коде изначально приписывается одна конкретная база данных с указанием в Record имени таблицы, а мне нужно открывать произвольную базу посредством выбора через Commod Dialog
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 14
15.12.2018, 09:17
Цитата Сообщение от tomhardy96 Посмотреть сообщение
работал в случае, когда я вручную в RecordSource указывал имя таблицы в файле Access
- да речь не про имя таблицы (таблица в Accsess - внутрифайловый объект)! В Common Dialog-e имя таблицы задать нельзя, а можно задать только имя mdb-файла
0
-1 / 0 / 0
Регистрация: 31.10.2018
Сообщений: 69
17.12.2018, 09:39  [ТС]
блин, мы не можем найти взаимопонимания из-за моих скудных знаний. Товарищ с форума помог мне составить следующий код, однако он без использования ComboBox:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Private Sub Text1_DblClick()
Dim ConStr As String
Me.CommonDialog1.ShowOpen
Me.Text1 = Me.CommonDialog1.FileName
ConStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Me.Text1 & "; Persist Security Info=False;"
Me.Adodc1.ConnectionString = ConStr
Me.Adodc1.RecordSource = "PROFILE" ' Про это название таблицы в файле Access я тебе говорил , мне нужно , чтобы я смог выбирать это название из ComboBox , если хочу работать с произвольным файлом
Me.Adodc1.CommandType = 2
Me.Adodc1.Refresh
Set Me.DataGrid1.DataSource = Me.Adodc1.Recordset
Me.DataGrid1.Refresh
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.12.2018, 09:39
Помогаю со студенческими работами здесь

Windows Form Visual Basic базы данных
Надо сделать так, чтобы после заполнения Textbox-оф, после нажатия кнопки появлялась соответсвенно заполненная строчка в БД. Но ничего не...

При подключении базы данных в источниках данных отображаются не все процедуры
Всем добрый вечер! Подскажите, как решить проблему: при подключении базы данных в источниках данных отображаются две хранимые процедуры...

Ошибка при подключении базы данных
Сайт сделан на на Yii2-advanced. Сервер- Hostinger Файлы были залиты на сервер, база данных через PhpMyadmin. На хостинге 2 аккаунта. На...

Ошибка при подключении базы данных
При подключении базы данных выдаёт такую ошибку

Ошибка при подключении базы данных к проэкту
осваиваю ADO.NET подключаю базу данных через забрасывание на форму BindingSource и прописывание в свойствах контрола базу данных. в книге...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru