Работа с файлове и външни данни в Access Не става въпрос само за копиране и поставяне: изборът между импортиране или свързване определя как ще се държат таблиците ви, дали ще има дубликати, какво ще се случи с връзките и дори как ще изглеждат грешки като #Num!. В това ръководство обяснявам подробно как да импортирате или свържете. интегриране на данни и файлове в Access от други бази данни на Access, от текст с разделители или текст с фиксирана ширина и как да се свързвате с ресурси като изображения, без да увеличавате размера на базата данни.
Целта е, че можеш да решаваш мъдро, когато ти е удобно копиране на данни (импорт), кога да се свърже в реално време (линк) и как избягвайте типичните спънки: лошо откривани типове данни, загубени връзки, полета за търсене, които показват идентификатори вместо стойности, или бази данни, които стават обемисти поради съхраняването на изображения в OLE формати. Ще видите и специален случай на ODBC връзки и как да автоматизирате повтарящи се процеси.
Импортиране на данни от друга база данни на Access
Импортиране от Access в Access позволява ви да копирате таблици, заявки, формуляри, отчети, макроси и модули (от .mdb/.accdb). Ако източникът е .mde/.accde, ще можете да импортирате само таблициМожете да донесете определение със или без данни и, ако искаш, нека връзките дойдат.
- Ограничения, които трябва да се вземат предвидНе можете да презаписвате съществуващи обекти или да добавяте записи със самата операция за импортиране, нито можете да пропускате конкретни полета, ако импортирате цяла таблица/заявка (можете да импортирате само дефиницията, за да получите празна таблица). Ако изходната таблица вече е свързана, Access ще превключи автоматично към операцията за свързване..
- Полета за търсене и заявки: ако таблицата източник има полета за търсене към друга таблица/заявка, тя също така свързва тези източници, така че показват се четливите стойности И не само идентификаторите. Можете да импортирате заявки като заявки (и след това трябва да въведете основните таблици) или като таблици с резултати.
- PreparaciónЗатворете източника (без ексклузивно заключване), отворете местоназначението с права за запис и имайте ясен списък с обекти, които да добавите. Ако е необходимо да добавяте към съществуващи таблици по-късно, планирайте заявка за прикачен файл.

Как да стартирате съветника за импортиране
- Местоположение на АсистентВ Microsoft 365/Access 2019/2021 отидете на Външни данни > Нов източник на данни > От база данни > Access. В Access 2016 отидете на Външни данни > Импортиране и свързване > Access. Отваря се съветникът „Външни данни: База данни на Access“.
- Работен поток: показва изходния файл, изберете „Импортиране на таблици, заявки, формуляри, отчети, макроси и модули в текущата база данни„“ и щракнете върху OK. Под „Импортиране на обекти“ изберете какво ви е необходимо във всеки раздел (Таблици, Заявки и др.).
- Ключови опции От полето „Опции“: можете да прехвърлите връзки, персонализирани менюта/ленти (раздел „Добавки“), запазени спецификации за импортиране/експортиране и групи от навигационния панел. За таблици решете дали искате Определение и данни o Само определениеза запитвания, „Като заявки"Или"Като маси".
- Затваряне на съветникаСлед завършване, Access копира и докладва за грешки, ако има такива. Можете запазете спецификацията импортиране, за да повторите операцията по-късно, без да преконфигурирате съветника.
Свързване на таблици от друга база данни на Access
Свързване в Access Създайте специални таблици в целевата база данни, които сочат към действителните изходни таблици. Ще виждате и редактирате текущите данни, но няма да можете да промените структурата от таблицата, свързана от дестинацията.
- Обхват и ограниченияСвързват се само таблици; не заявки или интерфейсни обекти. Не можете да свържете таблица, която вече е свързана таблица в източника: създайте директна връзка към базовата таблица. Ако въведете няколко свързани таблици, връзките между тях се спазват в местоназначението (без да е възможно да се променят там).
- Полета за търсене Във връзки: Ако дадено поле търси стойности в друга таблица, създайте и връзка към тази свързана таблица; в противен случай ще видите идентификатори в местоназначението, а не описателен текст.
- Имена и колизииКакто при импортирането, ако вече съществува обект с това име, Access добавя число (Таблица1, Таблица2 и т.н.). За да добавите записи, използвайте заявки за прикачени файлове, а не линкът.

Подготовка и свързване стъпка по стъпка
- Намерете произхода (MDB, MDE, ACCDB или ACCDE); ако има парола, ще ви поиска да я въведете. Решете към кои таблици се свързвате. Затворете източника, за да избегнете заключване, и отворете местоназначението с разрешения.
- Стартирайте съветникаВъншни данни > Access (или Нов източник на данни > От база данни > Access). Изберете файла и изберете „Свържете се с източника на данни чрез създаване на свързана таблица".
- Изберете таблици Щракнете върху „Свързване на таблици“ и след това върху OK. Access ще създаде свързаните таблици веднага.
- проверкаОтворете свързаните таблици в информационния лист и проверете дали данните и връзките се показват според очакванията. Ако поле за търсене показва идентификатори, свържете таблицата, от която идват стойностите.
Импортиране и свързване на текстови файлове (с разделители и с фиксирана ширина)
Access поддържа .txt, .csv, .asc и .tab файлове както за импортиране, така и за свързване. За да може съветникът да „разбере“ файла, записите трябва да са в редове, а полетата трябва да са разделени последователно: с разделител (запетая, точка и запетая, табулация, интервал и др.) или с фиксирана ширина на колона.
- РазграничениВсеки запис отива на един ред, а полетата са разделени с един символ. Ако стойността съдържа разделител, оградете я с текстов квалификатор (» или '). Например: «Ню Йорк, Чикаго», ако разделителят е запетая.
- Фиксирана ширинаВсяко поле е с еднаква дължина във всички записи; излишъкът се допълва с интервали. Съветникът може да открива колони и ви позволява да регулирате вертикални линии, за да разграничите полетата.
Откриване на типAccess проверява първите 25 реда, за да определи типа данни на всяко поле. Ако смесите типове (текст/число/дата) в тези редове, шансовете за пропускам или преобразувам погрешно данни. Поставете нетекстови стойности, които искате да се третират като текст (напр. кодове с водещи нули), в кавички.

Подгответе изходния файл
- Бърз преглед В редактор (Notepad, Word): Проверете дали е с разделители или с фиксирана ширина; открийте разделителя и, ако е приложимо, всички текстови определители. Уверете се, че всяко поле запазва своя тип по редовете.
- Технически ограниченияAccess не поддържа повече от 255 полета на таблица. Ако добавяте към съществуваща таблица, структурата трябва да съвпада (същият брой колони и съвместими типове); в противен случай подгответе нова таблица.
- ПочистванеПремахва ненужни празни редове и излишни символи (табулации, връщания на нула, прекъсвания на редове), които не са част от формата. Ако в местоназначението има задължителни полета, проверява дали няма липсващи данни или дали полето позволява нули.
- Хедъри: ако файлът Не. включва имена на полета, помислете за добавяне на първи ред със заглавки (само за разделители). При полета с фиксирана ширина, съветникът не предлага опцията за използване на първия ред като заглавки.
Импортиране на текстов файл в Access
- започванеВъншни данни > От файл > Текстов файл (в Access 2016: Външни данни > Текстов файл). Посочете файла и изберете дали да създадете нов. нова маса o ще анексирате към съществуващ.
- ФорматAccess ще предложи „С разделители“ или „Фиксирана ширина“. Потвърдете и щракнете върху „Напред“. За „С разделители“ укажете разделител и текстов квалификатор (» или '). Отбележете „Първият ред съдържа имена на полета“, ако е приложимо. За фиксирана ширина коригирайте разделителните линии на колоните.
- Полета и типовеКогато импортирате в нова таблица, проверете всяка колона: име, тип данни, дали е индексирана и дали искате пропускам any („Не импортирайте полето“). Ако таблицата е нова, решете първичен ключ (нека Access създаде автоматично номериране или избере колона).
- крайДайте име на таблицата и щракнете върху „Готово“. Ако таблицата вече съществува и сте избрали да създадете нова с това име, Access ще ви попита дали искате да я презапишете. запазете спецификацията внесени за повторна употреба.
Свързване на текстов файл
потокВъншни данни > От файл > Текстов файл > “Свържете се с източника на данни чрез създаване на свързана таблица„Съветникът е подобен на съветника за импортиране: изберете „Разделена/Фиксирана ширина“, задайте разделител и квалификатор, прегледайте типовете полета и дефинирайте името на свързана таблица.
РезултатВ Access ще имате таблична структура само за четене, която винаги отразява съдържанието на текстовия файл. За да промените данните или структурата, редактирайте изходния файл. Ако е необходимо да запазите редактируема снимка, импортирайте я, вместо да я свързвате.

Свързване на файлове с изображения в Access без OLE: пътища и формуляри
Запазване на изображения като OLE в базата данни е класически случай, който ненужно увеличава размера ѝ. Ефективната алтернатива е съхранява само пътя до файла в текстово поле (напр. PhotoPath) и показване на изображението във формуляри/отчети с контрола за изображение.
Препоръчителна структура: използва полета като CustomerId (AutoNumber), Name (Text) и RutaFoto (Текст)В RutaFoto можете да запазвате локални или мрежови маршрути, например: C:\\СНИМКИ\\МАРИЯ.JPGПо този начин базата данни не става по-голяма и всеки запис сочи към съответния файл на диска.
формаДобавете полето PhotoPath и контрола Image (свойство Image = (няма), режим Size = Stretch). Наименувайте го например ClientImageС малка VBA процедура, всеки път, когато промените пътя, контролата ще зареди снимката.
Примерен VBA код (След събитие за актуализиране на контролата RutaFoto):
Private Sub RutaFoto_AfterUpdate()
If Not IsNull(Me.RutaFoto) Then
Me.ImagenCliente.Picture = Me.RutaFoto
Else
Me.ImagenCliente.Picture = ""
End If
End Sub
информация- Същият подход работи и в отчетите; заредете изображението в съответното събитие (напр. Form_Current или When Formatting Section). Ако писането на пътища на ръка е тромаво, можете автоматизирайте с бутони и диалогови прозорци за избор на файла и запазване на пътя.
Импортиране от Excel и XML, спецификации и раздел „Външни данни“
Разделът „Външни данни“ Централизира помощниците за въвеждане на информация от Access, Excel, Text и XML. За Access щракнете върху „Access“ и решете дали да импортирате обекти или да свържете таблици. За Excel и XML помощниците ви водят през процеса. картографиране на колони и опции за форматиране.
Текстов асистент: Бутон за разширени функции: ви позволява да създавате/отваряте спецификации в стария формат. Въпреки че днес можете запазете спецификацията От последния екран за импортиране, бутонът „Разширени“ все още е полезен, ако се нуждаете от обратна съвместимост или за да запазите спецификация на връзка.
Запазени импортиранияКогато конфигурирате съветник и запазите спецификацията, можете да повторите процеса от същия раздел. без преконфигуриране разделители, типове, индекси и други опции. Много полезно за периодични зареждания.
Сега имате ясна пътна карта за избор между импортиране или свързване, работа с текст с разделители или с фиксирана ширина, избягване на проблеми с типа и дубликати и свързване на файлове като изображения по път, за да поддържате лека база данни. Добавете ODBC и автоматизация и ще имате ефикасен, надежден и поддържаем работен процес.