powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сам MS ACCESS через что работает с собственными БД
20 сообщений из 20, страница 1 из 1
Сам MS ACCESS через что работает с собственными БД
    #40071774
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При работе с БД Access в VBA можно использовать DAO или ADO
Но в простом варианте - создав таблицу и форму для работы с ней можно вообще не использовать VBA

Но как работает сам Access с собственными БД? Через DAO ADO или вообще какой-то родной механизм?
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40071776
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как работает EXCEL с книгами(своими файлами)?
Кстати VBA там тоже имеется
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40071785
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,

Ну все таки когда Вы работаете в VBA с объектной моделью Excel-а то файл у вас открыт, занят приложением Excel и все идет одним способом, т.е. с этим же файлом вы не работает через другие драйверы, а если например желаете работать с Excel-ом из какого стороннего средства, то работаете с ним в тот момент, когда другой кто-то с ним не работает (можно работать черезх драйвер прямо с файлом без привлечения Excel а можно отдавать команды Excel-у)

С Access-ом же другая история. Он что то делает сам, но и в VBA можно по разному работать. И как все это совмещается, какие могут быть конфликты и прочее

Я как-то не смог найти какого-то четкого описания существа этого вопроса, потому то и спросил
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40071792
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну собственно разобрался
Access довольно универсально работает в этом смысле
Если кратко то ADO
Если совсем старый то DAO (но можно для новых тоже принудительно можно указать)
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40071923
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lks1965,
А Вы попробуйте удалить библиотеку Visual Basic или одноименную с используемой офисной программой и посмотрите что ответит программа. А без DAО или ADO (они не подключены по умолчанию) все прекрасно работает
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40071930
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используемые встроенным кодом объекты идентичны (во всяком случае, на первый взгляд, по набору свойств, методов и пр., и вообще по дублированию имён типов) таковым в DAO.
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40071954
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да я поэксперементировал
Получается
DAO
- имеется в Microsoft DAO 3.6 ObjectLibrary
- продублировано в Microsoft Access XX.0 Database Engine ObjectLibrary т.е. объекты DAO вполне видны в VB независимо от того какая из этих библиотек подключена

ADO надо подключать специально

Среда т.е. сам Access работает совершенно независимо от того что подключаешь

Для проверки я отключил все ссылки кроме (их не отключишь)
Visual Basic ForApplication
Microsoft Access 16.0 ObjectLibrary

Сама среда работает позволяет создавать таблицы формы и прочее
Но в VB уже ничего не видно ни nbgf данных Recordset (как свойство Me он есть) ни других специфических для БД вещей
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072072
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lks1965
Для проверки я отключил все ссылки кроме (их не отключишь)
ссылки что тут перечислены, никакого отношения к самому приложению не имеют.
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072115
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Панург,

Так и есть
Без всяких этих ссылок во вновь созданной БД имеются как CurrentDB (DAO) так и CurrentProject.AccessConnection (это уже ADO)
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072124
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lks1965
Без всяких этих ссылок во вновь созданной БД имеются как CurrentDB (DAO) так и CurrentProject.AccessConnection (это уже ADO)
и это тоже не имеет отношения. ИМХО, хоть VBA и глубоко интегрирован в офисные приложения, я очень сильно сомневаюсь, то всё что ты видишь через IDE имеет большое отношение к самому приложению. Сужу по другим приложениям (не MS), куда было интегрировано VBA.
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072161
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я не до конца понимаю такой момент (отчего и возник вопрос)

Вот я сделал таблицы, описал схему БД, и сделал формы всякие. Все работает... хорошо...
Но наступает момент, когда я хочу что то долелать свое - обработку какую то и прочее. Для этого использую VBA.

И вопрос собственно возникает такой

Сам Access как-то обращается к БД.

И в VBA я например использую CurrentDB (это DAO), что то делаю а потом моя деятельность вступает в некий конфликт с работой самого Access-а через ADO. Ну или наоборот Access использует ADO а я внутри VBA DAO

Не есть ли в этом всем потенциальная возможность конфликтов доступа к БД
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072171
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lks1965,
если в коде что-то написано с использованием библиотеки DAO а она окажется не подключенной (такое иногда случается при работе базы на другом компьютере)возникнет ошибка(аналогично с ADO).А о том как работает ACCESS досконально понимают работники Microsoft (да и то далеко не все)
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072175
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да,коллеги, поясните такой момент: начиная с 2007 DAO, но какая-то неполноценная, подключена по умолчанию-это так или я ошибаюсь ?
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072197
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdku
какая-то неполноценная
Почему? Вполне. Просто сменилась библиотека. И драйвер. Раньше был Jet, теперь Ace.
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072223
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я сталкивался с такой "проблемой-непоняткой", что при открытии 2007 БД созданной в 2003 DAO была missing. Может потому что в 2003 по-умолчанию была ADO-это так(причем иногда-может это просто такая БД)?
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072227
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По крайней мере в 2019 Access получается так, что вновь созданная БД имеется рекордсеты к примеру на формах именно что типов DAO. Потом их можно поменять (через VBA) на рекордсеты ADO, но вначале создается именно DAO (хотя элементы от ADO тоже присутствуют)

И вообще в книгах к примеру по Access 2002 (Гетца) утверждалось, что DAO уступает дорогу ADO и отправляется на покой, но вот потом тональность поменялась и в книге к примеру "Microsoft.Access.2010.Programmers.Reference" говорится, что эти ожидания были преждевременны...

а потом MS вообще встроила DAO Из книги "Access® 2016 Bible"- In recent versions, Microsoft has revived DAO by building it into the Access Database Engine(в последних версиях Microsoft возродила DAO, встроив его в компонент Access Database Engine)
Да и вообще удаление из Accessа к примеру системы безопасности явно свидетельствует о его заточенности на таки локальные вещи

В рамках того что меня интересовало, я понял как устроено
Ну а для большинства тех, кто имеет солидный опыт это все это не имеет такого уж большого значения
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072231
Eolt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lks1965
Но как работает сам Access с собственными БД? Через DAO ADO или вообще какой-то родной механизм?


Через Microsoft Jet Database Engine
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072244
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне так сдается, что сам акцесс написан на языке низкого уровня типа си, и главная его роль - выполнение функции интерпретатора явного VB(а) и не явного VB (макросы) + он имеет кучу прибамбасов типа dao, ado, контролов и т.д. + встроенный jet для работы со своим форматом БД и инструменты для MS Sql (adp)... ну если в кратце, то в интерпретатор по максимуму встроили классический VB, а чтоб не задавали вопросов типа а нахрена, заточили всё это под работу с БД добавив запросы и отчеты + Добавили VBA в весь пакет офиса для сопряжения ... Типа вот вам небольшие настольные БД (mdb) и серьезные кому нужно - ковыряйте adp под MS Sql... Потом ветер дул в разные стороны, в результате имеем то, что имеем... Единственное что радует - деградация сильно растянута по времени... но ставки падают год от года...
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072245
lks1965
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag,

Да наверное что то такое

И скажу, что в качестве локальной БД средней сложности (особенно если нужно (как мне) взаимодействие со всякими ms офисными вещами эксел, ворд, visio), которую взял да понес или переслал куда-то думаю конкурентов у него маловато.
...
Рейтинг: 0 / 0
Сам MS ACCESS через что работает с собственными БД
    #40072254
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eolt
Через Microsoft Jet Database Engine
уже Access Control Entries (ACE)
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сам MS ACCESS через что работает с собственными БД
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]