Как импортировать csv в access
Импорт нескольких csv-файлов в Access
Всем привет!
помогите, пж, экспортировать несколько файлов формата csv в таблицу access или запрос.
Есть несколько файлов. У каждого свое название, и каждый файл лежит по разному пути. Содержимое файла одинаковая таблица. Необходимо ее экспортировать в access + экспортировать полный путь файла, из которго взята эта таблица.
Вложения
тест.rar (354 байт, 35 просмотров) |
Импорт офисных файлов в таблицы Access через VBA (БД почтовых файлов)
помогите пожалуйста как работать с файлам в Access. основные поля и форму сделал, таблицу тоже.
Импорт текстовых файлов в таблицы Access через VBA
При создании базы данных столкнулся с проблемой. С импортом текстовых файлов в таблицы Access.
Использование нескольких файлов Access для преодоления ограничения размера БД в 2 Гб
Чтобы работать с БД более 2 Гб через Access, начал переделывать БД так, что раскидываю наиболее.
Формально говоря, в такой постановке задача неразрешима. Неизвестно где находятся файлы, рядом ли в соседних папках или на разных ПК, или в интернете. Но предположим, что как выложенном примере есть корневая папка внутри которой подпапки и там, каждый в своей подпапке лежат означенные файлы. В таком варианте задача выполнима. Смотрите пример.
Но надо сказать, что если в некоторых записях будет пропущены параметры, то эта запись будет с ошибкой. Неизвестно, ведь какой параметр пропущен.
И еще. В прилагаемом варианте предполагается, что в каждом файле первая строка это названия полей (параметров). И что во всех файлах эти названия и их порядок неизменны.
Импорт CSV файла в Access
Не хочет импортироваться
Пишет то, что на рисунке, хотя таблицу «Exports1» я создал путем ручного импортирования файла «exports1.csv»
Уже просто не знаю, где копать.
Прикрепляю базу и импортируемый файл
Вложения
Конвертер1.zip (20.3 Кб, 10 просмотров) |
Импорт нескольких csv-файлов в Access
Всем привет! помогите, пж, экспортировать несколько файлов формата csv в таблицу access или.
Импорт XML файла в Access
Добрый день. Большая просьба помочь. Имеется файл XML со структурой табл (во вложении) Мне нужно.
Импорт данных из Excel файла в Access
Доброго времени суток, подскажите пожалуйста каким образом можно осуществить импорт данных из.
Вложения
Конвертер1_v02.zip (26.0 Кб, 11 просмотров) |
На форуме, «который нельзя тут называть», подсказали другое решение.
«В TransferText используйте второй параметр: создайте и сохраните спецификацию импорта с нужным разделителем и указывайте название сохраненной спецификации при импорте. «
Вроде работает.
Теперь вопрос по экспорту, но наверное лучше создать отдельную тему.
Access импорт: имя файла в столбец таблицы
как сделать, чтобы при импорте из файла name.xls в таблице создавался столбик заполненый ‘name’.
Импорт данных в access с выбором нужного файла
Мне необходимо импортировать данные их внешних источников. Я нашел пригодным макрос.
Импорт таблицы из файла Word в таблицу Access
Помогите решить проблему: Есть несколько сотен файлов Word, в каждом таблица в виде y | y.
Импорт данных из файла Excel в Web Access
Никогда с Web Access не работал, а тут пришлось. В обычной БД Access проблемы нет, осуществляю.
Импорт текстового файла в базу Access через VBA
Есть примерно 1500 однотипных csv файлов в одной директории. Нужно их импортировать в базу(а.
Импорт в Access текстового файла (данные без разделителей)
Добрый день! Помогите пожалуйста начинающему программисту! Мне нужно импортировать текстовый файл в.
Импортируйте в Access огромный файл CSV размером 550000+ строк
У меня есть файл CSV с более чем 550 000 строками.
Мне нужно импортировать эти данные в Access, но при попытке выдает ошибку, что файл слишком велик (1,7 ГБ).
Можете ли вы порекомендовать способ получить этот файл в Access?
7 ответов
Я бы либо попробовал соединитель CSV ODBC, либо сначала импортирую его в менее ограниченную базу данных (MySQL, SQL Server) и импортирую оттуда.
Похоже, что некоторые версии доступа имеют жесткое ограничение в 2 ГБ для файлов MDB, поэтому в любом случае у вас могут возникнуть проблемы.
Вы также можете использовать инструмент ETL. Kettle имеет открытый исходный код (http://kettle.pentaho.org/), и его действительно довольно легко использовать. Для импорта файла в базу данных требуется одно преобразование с двумя шагами: ввод текста CSV и вывод таблицы.
Почему вы используете доступ к огромным файлам? используйте вместо этого sqlexpress или firebird
Я помню, что у Access есть ограничение по размеру около 2 Go. Переход на бесплатный SQLExpress (ограниченный 4 Go) или бесплатный MySQL (без ограничения размера) может быть проще.
Откройте, затем файл. Получите первую строку. Проходите до конца строки. Если мы находим запятую, то переходите к следующему полю. Поместите запись в базу данных. Получите следующую строку, повторите и т. Д.
Я превратил его в транзакцию, которая фиксирует каждые 100 строк, поскольку я обнаружил, что в моем случае производительность улучшилась, но это будет зависеть от ваших данных, если это поможет.
Однако я бы сказал, что связывание данных, как говорили другие, является лучшим решением, это просто вариант, если вам абсолютно необходимо иметь доступ к данным.
Доступ создает много накладных расходов, поэтому даже относительно небольшие наборы данных могут раздуть файл до 2 ГБ, после чего он отключится. Вот несколько простых способов импорта. Я не тестировал это на огромных файлах, но эти концепции определенно будут работать с обычными файлами.
Импорт текстового файла или связывание с ним
Существует два способа переноса данных из текстового файла в Access. Если вы хотите создать копию данных, доступную для изменения в Access, файл следует импортировать в новую или существующую таблицу с помощью мастера импорта текстовых файлов. Если вы просто хотите просматривать обновленные исходные данные в Access и использовать расширенные функции запросов и отчетов, создайте в базе данных связь с текстовым файлом с помощью мастера связывания с текстовыми файлами.
В этой статье подробно описываются процедуры импорта и связывания с текстовым файлом с помощью мастеров.
В этой статье
Текстовые файлы и поддерживаемые форматы
Текстовый файл содержит читаемые знаки без форматирования (например, буквы и цифры) и специальные символы (такие как табуляция, перевод строки и возврат каретки). Access поддерживает следующие расширения для имени файла: TXT, CSV, ASC и TAB.
Чтобы использовать текстовый файл в качестве источника для импорта или связывания, необходимо структурировать его содержимое таким образом, чтобы мастера импорта и связывания могли разделить его на записи (строки), а каждую запись — на поля (столбцы). Текстовые файлы с правильной структурой делятся на два типа:
Файлы с разделителями. В таких файлах каждая запись располагается на отдельной строке, а поля отделяются друг от друга одним символом (разделителем). Разделителем может служить любой знак, который не используется в значениях полей, например знак табуляции, точка с запятой, запятая, пробел и т. д. Ниже приведен пример текста с разделителями-запятыми.
Файлы с полями фиксированного размера. В таком файле каждая запись размещается на отдельной строке, а ширина каждого поля является постоянной для всех записей. Например, первое поле каждой записи всегда состоит из семи знаков, второе — всегда из 12, и т. д. Если фактические значения поля различаются от записи к записи, к значениям, длина которых меньше требуемой ширины, в конце нужно добавить пробелы. Ниже приведен пример текста с полями фиксированного размера.
Импорт данных из текстового файла
Если вы хотите сохранить все данные текстового файла или их часть в базе данных Access, содержимое файла следует импортировать в новую таблицу или добавить к существующей. Импортированные данные можно просматривать и редактировать, не влияя на исходный текстовый файл.
В ходе импорта вы можете задать структуру исходного файла и выбрать вариант импорта: в новую или существующую таблицу.
Совет: Если вы не знакомы с таблицами или структурой базы данных, см. статьи Создание таблиц в базе данных и Основные сведения о создании баз данных.
В конце импорта можно сохранить сведения о нем в виде спецификации. Спецификация позволяет выполнять импорт повторно без использования мастера.
Стандартные сценарии импорта текстового файла в Access
Как правило, текстовые данные импортируются в Access по следующим причинам:
Часть данных хранится в формате, который не поддерживается в Access, но их требуется использовать в базе данных. Исходные данные можно сначала экспортировать в текстовый файл, а затем импортировать этот файл в таблицу Access.
Вы используете Access для управления данными, но при этом регулярно получаете данные в текстовом формате от пользователей другой программы. Импорт данных выполняется регулярно, и вы хотите упростить этот процесс для экономии времени и усилий.
Примечание: Если открыть в Access текстовый файл (для этого нужно выбрать в списке Тип файлов диалогового окна Открытие файла базы данных значение Все файлы и щелкнуть нужный текстовый файл), Access запустит мастер связывания с текстовыми файлами, который позволяет создать ссылку на текстовый файл, вместо того чтобы импортировать его содержимое. Связывание с файлом отличается от импорта его содержимого. Дополнительные сведения о связывании с текстовыми файлами см. в разделе Создание связи с текстовым файлом далее в этой статье.
Подготовка исходного файла
Откройте исходный файл в текстовом редакторе, например в Блокноте.
Примечание: В ходе одной операции импорта можно импортировать лишь один текстовый файл. Чтобы импортировать несколько файлов, повторите импорт для каждого из них.
Просмотрите содержимое исходного текстового файла и выполните действия из приведенной ниже таблицы.
Разделители или поля фиксированного размера
Убедитесь, что содержимое файла соответствует выбранному формату. Если это файл с разделителями, найдите разделитель. Если это файл с полями фиксированного размера, убедитесь, что длина значения поля одинакова во всех записях.
Некоторые файлы с разделителями могут содержать значения полей, заключенные в одинарные или двойные кавычки, как показано ниже:
«Ольга Зуева»,25,4.5.2017,»Нижний Новгород»
Знак, используемый для ограничения значения поля, называется ограничителем текста. Ограничители не являются обязательными, но их рекомендуется использовать в следующих случаях:
Разделитель является частью значения поля. Например, если в качестве разделителя используется запятая, а значение поля равно Самара, Вологда, его придется заключить в ограничители: «Самара, Вологда».
Вы хотите, чтобы Access обрабатывал нетекстовые значения, например 0452934 и 0034539, как текстовые и хранил их в текстовом поле.
Во время импорта можно указать, используется ли в файле ограничитель, и, если он используется, задать соответствующий знак.
Убедитесь в том, что во всем файле используется один ограничитель текста и что он применяется только к текстовым значениям.
Пропуск записей и значений
Если вам нужно перенести лишь часть текстового файла, его следует отредактировать перед началом импорта, так как пропуск записей в ходе операции невозможен.
Если вы добавляете данные в новую таблицу, некоторые поля можно пропустить, но этот вариант не поддерживается при добавлении в существующую таблицу. В последнем случае структура исходных данных должна соответствовать структуре конечной таблицы. Другими словами, в исходном файле должно быть то же число столбцов, что и в конечной таблице, а типы данных должны совпадать с типами данных в конечной таблице.
Пустые строки и поля
Удалите все лишние пустые строки из файла. При наличии пустых полей добавьте в них отсутствующие данные. Если вы планируете добавить записи в существующую таблицу, убедитесь, что соответствующие поля таблицы допускают использование значений NULL. Поле может принимать значения NULL, если для его свойства Обязательное поле задано значение Нет, а свойство Условие на значение не запрещает значения NULL.
Найдите и удалите лишние символы (табуляции, перевода строки, возврата каретки).
Чтобы избежать ошибок при импорте, убедитесь, что типы данных в полях одинаковы для всех строк. Access считывает первые 25 строк файла, чтобы определить тип данных для полей таблицы. Настоятельно рекомендуем убедиться в том, что первые 25 исходных строк не содержат данные разных типов. Кроме того, нетекстовые значения, которые требуется обрабатывать как текстовые, необходимо заключить в одинарные или двойные кавычки.
Если исходный файл содержит смешанные значения в строках, идущих после 25-й строки, они могут быть пропущены или неправильно преобразованы при импорте. Сведения об устранении проблем см. в разделе Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице далее в этой статье.
Если файл с разделителями не содержит имена полей, их рекомендуется указать в первой строке. В ходе импорта можно настроить мастер так, чтобы значения в первой строке считались именами полей. При импорте файлов с полями фиксированного размера такая возможность недоступна.
Примечание: Если вы добавляете файл с полями фиксированного размера в существующую таблицу, убедитесь, что имя каждого столбца в точности соответствует имени поля. Если они отличаются, импорт завершится сбоем. Чтобы просмотреть имена полей, откройте конечную таблицу в режиме конструктора.
Закройте исходный файл, если он открыт. Если исходный файл остается открытым в ходе операции импорта, могут возникнуть ошибки преобразования данных.
Запуск импорта в Access
Откройте базу данных Access, в которой будут храниться импортируемые данные. Если ни одна из существующих баз данных не подходит для этого, создайте пустую базу данных.
Перед началом импорта следует определить, в какой таблице будут храниться данные: в новой или существующей.
Создание новой таблицы. Если необходимо сохранить данные в новой таблице, в Access создается таблица, в которую добавляются импортируемые данные. Если таблица с указанным именем уже существует, ее содержимое перезаписывается импортируемыми данными.
Добавление в существующую таблицу. Если используется существующая таблица, при импорте данные добавляются в нее.
Следует помнить, что ошибки в ходе добавления зачастую объясняются тем, что исходные данные не соответствуют структуре и параметрам полей в конечной таблице. Чтобы избежать таких ошибок, откройте таблицу в режиме конструктора и проверьте следующее:
Первая строка. Если в первой строке исходного текстового файла нет имен полей, убедитесь, что столбцы в этом файле расположены в том же порядке и имеют тот же тип данных, что и в таблице. Если первая строка файла с разделителями содержит заголовки столбцов, совпадение порядка столбцов и полей необязательно, но имя и тип данных каждого столбца должны в точности совпадать с именем и типом данных соответствующего поля. При импорте файлов с полями фиксированного размера такая возможность недоступна.
Отсутствующие или лишние поля. Если в конечной таблице отсутствует одно или несколько полей, добавьте их до начала импорта. Если же таблица содержит поля, отсутствующие в исходном файле, их не требуется удалять из таблицы, если для них разрешены значения NULL.
Совет: Поле может принимать значения NULL, если для его свойства Обязательное поле задано значение Нет, а свойство Условие на значение не запрещает значения NULL.
Первичный ключ. Если таблица содержит поле первичного ключа, исходный файл должен содержать столбец со значениями, совместимыми с полем первичного ключа. Кроме того, импортируемые значения ключа должны быть уникальными. Если импортируемая запись содержит значение первичного ключа, которое уже существует в таблице, отображается сообщение об ошибке. Нужно отредактировать исходные данные таким образом, чтобы они содержали уникальные значения ключа, а затем повторить импорт.
Индексированные поля. Если для свойства Индексированное поле поля в таблице задано значение Да (совпадения не допускаются), соответствующий столбец в исходном текстовом файле должен содержать уникальные значения.
Расположение мастера импорта или связывания текста зависит от используемой версии Access. Выполните действия, которые соответствуют вашей версии Access.
Если вы используете Access 2019 или последнюю версию Access, которая предоставляется по подписке на Microsoft 365, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Создать источник данных и выберите Из файла > Текстовый файл.
Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Текстовый файл.
Откроется диалоговое окно Внешние данные — Текстовый файл.
В диалоговом окне Внешние данные — Текстовый файл введите путь к исходному файлу в поле Имя файла.
Укажите способ сохранения импортируемых данных.
Чтобы сохранить данные в новой таблице, выберите вариант Импортировать данные источника в новую таблицу в текущей базе данных. Позднее будет предложено указать имя этой таблицы.
Чтобы добавить данные в существующую таблицу, выберите параметр Добавить копию записей в конец таблицы и выберите таблицу в раскрывающемся списке.
Примечание: Сведения о связывании с источником данных путем создания связанной таблицы см. ниже в разделе Создание связи с текстовым файлом.
Access проверит содержимое файла и предложит его структуру. Если в файле используется разделитель, убедитесь, что выбран вариант с разделителями. Если файл содержит поля фиксированного размера, убедитесь, что выбран параметр фиксированная ширина полей. Если вы не уверены, какие поля в файле, см. предыдущий раздел (Подготовка исходного файла).
Примечание: Если исходный текстовый файл содержит знаки табуляции или другие специальные знаки, в мастере импорта текстовых файлов они отображаются в виде полей между столбцами данных.
Нажмите кнопку Далее.
В зависимости от выбранного варианта (файл с разделителями или с полями фиксированного размера) мастер отображает нужные сведения.
Выберите или укажите знак, разделяющий значения полей (табуляция, точка с запятой, запятая, пробел или другой). Если в файле используется ограничитель строк, выберите в поле Ограничитель текста двойные ( «) или одинарные ( ‘) кавычки. Если первая строка исходного файла содержит имена полей, установите флажок Первая строка содержит имена полей. Затем нажмите кнопку Далее.
Фиксированная ширина полей
Мастер отображает содержимое файла. Если Access обнаруживает столбцы данных, для разделения полей вставляются вертикальные черты. Просмотрите предлагаемую мастером структуру и следуйте его инструкциям, если нужно добавить, удалить или исправить строки. Затем нажмите кнопку Далее.
Если вы добавляете данные в существующую таблицу, перейдите к шагу 12. Если же данные импортируются в новую таблицу, нажмите кнопку Далее, чтобы просмотреть свойства полей, отображаемые в мастере.
Примечание: Страница мастера, на которой можно указать сведения об импортируемых полях, не отображается при добавлении записей в существующую таблицу.
Щелкните столбец в нижней части страницы, чтобы отобразить свойства нужного поля. Просмотрите и измените имя и тип данных конечного поля.
Access проверяет первые 25 строк каждого столбца, чтобы определить тип данных для соответствующего поля. Если первые 25 строк столбца содержат значения разных типов, например текст и числа, мастер предлагает тип данных, совместимый со всеми значениями столбца или их большинством (как правило, это текстовый тип данных). Хотя можно выбрать и другой тип данных, следует помнить, что значения, несовместимые с этим типом, будут в ходе импорта пропущены или преобразованы неправильно. Дополнительные сведения о том, как исправить неверные или отсутствующие значения, см. ниже в разделе Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице.
Чтобы создать индекс для поля, присвойте свойству Индексировано значение Да. Чтобы пропустить весь исходный столбец, установите флажок Не импортировать (пропустить) поле. Затем нажмите кнопку Далее.
Если записи добавляются в новую таблицу, мастер предлагает указать для нее первичный ключ. При выборе варианта автоматически создать ключ Access добавляет поле счетчика в качестве первого поля конечной таблицы и автоматически заполняет его уникальными значениями кодов, начиная с 1. Нажмите кнопку Далее.
Примечание: Страница мастера, на которой можно указать сведения об импортируемых полях, не отображается при добавлении записей в существующую таблицу.
Откроется последняя страница мастера. Если записи импортируются в новую таблицу, укажите ее имя в поле Импорт в таблицу. Если такая таблица уже существует, появится запрос о перезаписи ее содержимого. Нажмите кнопку Да, чтобы продолжить, или кнопку Нет, чтобы указать другое имя конечной таблицы.
Для чего предназначена кнопка Дополнительно?
Кнопка Дополнительно в мастере импорта текстовых файлов служит для создания или открытия спецификаций импорта в формате, который использовался в предыдущих версиях Access. Кнопку Дополнительно рекомендуется использовать только в том случае, если спецификации импорта, созданные в предыдущих версиях Access, требуется использовать в Access 2007. Если же вы хотите сохранить сведения об этой операции импорта, прочтите следующий раздел.
Чтобы импортировать данные, нажмите кнопку Готово.
Access попытается импортировать данные. Если хотя бы часть данных импортирована, в мастере появится диалоговое окно, в котором указывается состояние импорта. Если же операция закончилась сбоем, в Access отображается сообщение Ошибка при попытке импорта файла.
Откройте конечную таблицу в режиме таблицы. Сравните данные в таблице с исходным файлом, чтобы убедиться в их правильности.
Что еще важно знать об импорте
Сведения о том, как сохранить сведения об импорте в виде спецификации, которую можно использовать повторно, см. в статье Сохранение параметров операции импорта или экспорта в виде спецификации.
Дополнительные сведения о запуске спецификаций см. в статье Выполнение сохраненной операции импорта или экспорта.
Дополнительные сведения о запуске спецификаций в определенное время см. в статье Планирование импорта или экспорта.
Сведения о том, как изменить имя спецификации, удалить ее или обновить имена исходных файлов, см. в статье Задачи управления данными.
Решение проблем, связанных с отсутствующими и неверными значениями в импортированной таблице
Сообщение Ошибка при попытке импорта файла свидетельствует о том, что импорт завершился сбоем. Если же после импорта отображается страница, на которой предлагается сохранить сведения об операции, это означает, что данные были полностью или частично импортированы. В сообщении о состоянии указывается также имя таблицы, которая содержит описание всех ошибок, возникших в ходе импорта.
Важно отметить, что даже если в сообщении о состоянии указано, что операция завершилась успешно, перед использованием таблицы следует просмотреть ее содержимое и структуру, чтобы убедиться в правильности всех данных.
Откройте конечную таблицу в режиме таблицы, чтобы убедиться в том, что в таблицу были успешно добавлены все данные. После этого откройте таблицу в режиме конструктора, чтобы проверить типы данных и параметры свойств для полей.
В приведенной ниже таблице описаны действия по разрешению проблем, связанных с отсутствующими или неверными значениями.
Совет: Если вы обнаружили лишь несколько отсутствующих значений, можно добавить их в таблицу вручную в режиме таблицы. Если же отсутствует или неправильно импортирован целый столбец либо большой объем данных, следует исправить исходный файл. После устранения всех возможных проблем повторите импорт.
Если в исходном файле есть поле, которое содержит только значения «Истина» или «Ложь» либо только значения «Да» или «Нет», и для этого поля выбран тип данных «Логический», в таблице появятся значения –1 и 0. Откройте таблицу в режиме конструктора и задайте для свойства Формат значение Истина/Ложь или Да/Нет.
В Access импорт нескольких значений в одно поле не поддерживается. Список значений обрабатывается как одно значение и помещается в тестовое поле. Значения в поле разделяются точкой с запятой.
В случае усечения данных в столбце попытайтесь увеличить его ширину в режиме таблицы. Если устранить проблему таким образом не удается, возможно, причина в том, что числовое поле имеет тип Длинное целое вместо Двойное с плавающей точкой.
Отсутствуют данные в поле первичного ключа или индексированном поле
Импортируемые записи могут содержать повторяющиеся значения, которые невозможно сохранить в поле первичного ключа в конечной таблице или в поле, для которого свойству Индексировано присвоено значение Да (без повторов) в базе данных Access. Удалите повторяющиеся значения в исходном файле и повторите импорт.
Открыв таблицу в режиме таблицы, вы можете заметить, что некоторые поля пустые. Чтобы сократить количество пустых значений в таблице или полностью удалить их, выполните перечисленные ниже действия.
Если в первых 25 строках исходного файла встречаются значения с разным типом данных, откройте файл и поменяйте порядок строк таким образом, чтобы в каждом поле в первых 25 строках тип данных совпадал. Затем попробуйте повторить импорт.
Заключите в одинарные или двойные кавычки все нетекстовые значения, которые вы хотите сохранить как текстовые.
В ходе импорта выберите для каждого поля подходящий тип данных. Если он указан неправильно, во всем столбце могут появиться пустые или неверные значения.
Кроме того, может потребоваться просмотреть таблицу ошибок, о которой говорится на последней странице мастера, в режиме таблицы. Эта таблица содержит три поля: «Ошибка», «Поле» и «Строка». В каждой ее строке содержатся сведения об определенной ошибке, а данные в поле «Ошибка» можно использовать при устранении проблем.
Полный список ошибок и советы по устранению неполадок
Значение в поле превышает размер, заданный свойством FieldSize этого поля.
Ошибка преобразования типа
Значение в текстовом файле или на листе не соответствует типу данных поля. Это значение может быть заменено пустым или неверным значением в конечном поле. Дополнительные сведения об устранении этой проблемы см. в предыдущей таблице.
Нарушение уникальности ключа
Значение первичного ключа записи совпадает со значением, уже имеющимся в таблице.
Нарушение условия на значение
Значение не соответствует правилу, заданному для этого поля или таблицы с помощью свойства ValidationRule.
Пустое значение в обязательном поле
Данное поле не может иметь пустое значение, поскольку его свойство Обязательное поле (Required) имеет значение Да.
Пустое значение в поле счетчика
Импортируемые данные содержат пустое значение (NULL), и была выполнена попытка добавить его в поле счетчика.
Текстовое значение содержит знак разделителя (как правило, это прямые кавычки). Если значение содержит знак разделителя, он должен содержаться в текстовом файле дважды, например:
по 10 дискет 3 1/2″» в коробке
Создание связи с текстовым файлом
Связывание позволяет использовать данные из другого файла, не импортируя их. В этом случае можно просматривать обновленные данные как в исходной программе, так и в файле Access. При этом не требуется создавать и обновлять копию данных в Access. Если вместо копирования текстового файла в базу данных Access требуется использовать его для выполнения запросов и создания отчетов, следует использовать не операцию импорта, а функцию связывания с текстовым файлом.
Когда вы создаете связь с текстовым файлом, Access создает таблицу, которая связана с исходным файлом. Все изменения, вносимые в исходный файл, применяются к связанной таблице. При этом изменение данных таблицы в Access не разрешается. Если вы хотите внести изменения в содержимое или структуру, откройте исходный файл и отредактируйте его.
Стандартные сценарии связывания с текстовым файлом из Access
Вы используете программу, которая сохраняет выходные данные в текстовом формате, однако эти данные нужны для анализа и создания отчетов в других приложениях, в том числе в Access.
Данные, необходимые для работы, обновляются сотрудниками другого отдела или рабочей группы. Вы хотите просматривать обновленные данные, но не изменять их или хранить собственную копию.
Первое связывание с текстовым файлом
При связывании с текстовым файлом в Access создается новая таблица, которая называется также связанной таблицей. В ней отображаются данные исходного файла; при этом они не сохраняются в базе данных.
Текстовый файл невозможно связать с существующей таблицей базы данных. Другими словами, операция связывания не позволяет добавлять данные в существующую таблицу.
База данных может содержать несколько связанных таблиц.
Все изменения данных в исходном файле автоматически отражаются в связанной таблице. Однако содержимое и структура связанной таблицы Access доступны только для чтения.
При открытии текстового файла в Access создается пустая база данных и автоматически запускается мастер связывания с текстовыми файлами.
Шаги по созданию связи с текстовым файлом
Найдите текстовый файл и откройте его в текстовом редакторе, например, в Word или Блокноте.
Имейте в виду, что в ходе одной операции связывания можно создать связь лишь с одним текстовым файлом. Чтобы создать связь с несколькими текстовыми файлами, операцию следует повторить для каждого из них.
Просмотрите данные исходного файла и выполните необходимые действия в соответствии с приведенной ниже таблицей.
Разделители или поля фиксированного размера
Убедитесь, что содержимое файла соответствует выбранному формату. Если это файл с разделителями, найдите разделитель. Если это файл с полями фиксированного размера, убедитесь, что длина значения поля одинакова во всех записях.
Некоторые файлы с разделителями могут содержать значения полей, заключенные в одинарные или двойные кавычки, как показано ниже:
«Ольга Зуева»,25,4.5.2017,»Нижний Новгород»
Знак, используемый для ограничения значения поля, называется ограничителем текста. Ограничители не являются обязательными, но их рекомендуется использовать в следующих случаях:
Разделитель является частью значения поля. Например, если в качестве разделителя используется запятая, а значение поля равно Самара, Вологда, его придется заключить в ограничители: «Самара, Вологда».
Вы хотите, чтобы Access обрабатывал нетекстовые значения, например 0452934 и 0034539, как текстовые и хранил их в текстовом поле.
Во время связывания можно указать, используется ли в файле ограничитель, и, если он используется, задать соответствующий знак.
Убедитесь в том, что во всем файле используется один ограничитель текста и что он применяется только к текстовым значениям.
Пропуск записей и полей
Вы можете пропустить некоторые поля, но не записи.
Пустые строки и поля
Удалите все лишние пустые строки в файле. При наличии пустых полей постарайтесь добавить в них отсутствующие данные в исходном файле.
Найдите и удалите лишние знаки (символы табуляции, перевода строки, возврата каретки).
Чтобы избежать ошибок при связывании, убедитесь, что типы данных в полях одинаковы для всех строк. Access считывает первые 25 строк файла, чтобы определить тип данных для полей таблицы. Настоятельно рекомендуем убедиться в том, что первые 25 исходных строк не содержат данные разных типов. Кроме того, нетекстовые значения, которые требуется обрабатывать как текстовые, необходимо заключить в одинарные или двойные кавычки.
Если исходный файл содержит смешанные значения в строках, идущих после 25-й строки, они могут быть неправильно преобразованы или привести к ошибкам. Сведения об устранении проблем см. в разделе Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблицедалее в этой статье.
Если файл с разделителями не содержит имена полей, их рекомендуется указать в первой строке. В ходе связывания можно настроить мастер так, чтобы значения в первой строке считались именами полей. Однако при импорте файлов с полями фиксированного размера такая возможность недоступна.
Закройте исходный файл, если он открыт.
Откройте базу данных, в которой требуется создать связь. Убедитесь, что база данных доступна не только для чтения и что у вас есть права на внесение в нее изменений.
Если ни одна из существующих баз данных не подходит для хранения связи, создайте пустую базу данных.
Расположение мастера импорта или связывания текста зависит от используемой версии Access. Выполните действия, которые соответствуют вашей версии Access.
Если вы используете Access 2019 или последнюю версию Access, которая предоставляется по подписке на Microsoft 365, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Создать источник данных и выберите Из файла > Текстовый файл.
Если вы используете Access 2016, Access 2013 или Access 2010, на вкладке Внешние данные в группе Импорт и связи нажмите кнопку Текстовый файл.
Откроется диалоговое окно Внешние данные — Текстовый файл.
В диалоговом окне Внешние данные — Текстовый файл укажите имя текстового файла, который содержит данные для связывания, в поле Имя файла.
Выберите вариант Создать связанную таблицу для связи с источником данных и нажмите кнопку ОК.
Откроется мастер связывания с текстовыми файлами, помогающий выполнить нужные действия по связыванию.
Access проверит содержимое файла и предложит его структуру. Если в файле используется разделитель, убедитесь, что выбран вариант с разделителями. Если файл содержит поля фиксированного размера, убедитесь, что выбран параметр фиксированная ширина полей.
Нажмите кнопку Далее.
Следующая страница зависит от выбранного варианта (файл с разделителями или полями фиксированного размера).
Файлы с разделителями. Выберите или укажите знак разделителя для значений полей. Если в файле используется ограничитель строк, выберите в поле Ограничитель текста значение « (двойные кавычки) или ‘ (одинарные кавычки). Если первая строка исходного файла содержит имена полей, установите флажок Первая строка содержит имена полей. Затем нажмите кнопку Далее.
Файлы с полями фиксированного размера. Мастер отображает содержимое файла. Если Access обнаруживает столбцы данных, для разделения полей вставляются вертикальные черты. Просмотрите предлагаемую мастером структуру и следуйте его инструкциям, если нужно добавить, удалить или исправить строки. Затем нажмите кнопку Далее.
На следующей странице мастера выводятся свойства поля. Щелкните столбец в нижней части страницы, чтобы отобразить свойства нужного полей. Просмотрите и измените имена и типы данных конечных полей.
Access проверяет первые 25 строк каждого столбца, чтобы определить тип данных для соответствующего поля. Если первые 25 строк столбца содержат значения разных типов, например текст и числа, мастер предлагает тип данных, совместимый со всеми значениями столбца или их большинством (как правило, это текстовый тип данных). Хотя можно выбрать и другой тип данных, следует помнить, что значения, несовместимые с этим типом, будут преобразованы неправильно или приведут к ошибкам. Дополнительные сведения см. ниже в разделе Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблице.
Для чего предназначена кнопка Дополнительно?
Кнопка Дополнительно в мастере служит для создания или открытия спецификаций связывания в формате, который использовался в предыдущих версиях Access. В Access не поддерживается сохранение спецификации для связывания (в отличие от импорта и экспорта). Поэтому для сохранения спецификации связывания следует нажать кнопку Дополнительно, выбрать нужные параметры и нажать кнопку Сохранить как.
Нажмите кнопку Далее.
На последней странице мастера укажите имя связанной таблицы и нажмите кнопку Готово. Если таблица с указанным именем существует, появится запрос на ее перезапись. Нажмите кнопку Да, чтобы перезаписать файл, или кнопку Нет, чтобы задать другое имя таблицы.
Access попытается создать связанную таблицу. В случае успешного создания таблицы появится сообщение Завершено связывание таблицы. Откройте связанную таблицу и просмотрите поля и данные, чтобы убедиться в их правильности.
Решение проблем со значением #ЧИСЛО! и неверными значениями в связанной таблице
Даже если появится сообщение Завершено связывание таблицы, откройте таблицу в режиме таблицы и убедитесь, что все строки и столбцы содержат правильные данные.
При наличии в таблице ошибок или неверных данных необходимо выполнить действия, описанные в приведенной ниже таблице, и повторить попытку связывания. Следует помнить, что добавить значения непосредственно в связанную таблицу невозможно, так как она доступна только для чтения.
Если в исходном файле есть поле, которое содержит только значения «Истина» или «Ложь» либо только значения «Да» или «Нет», и для этого поля выбран тип данных Логический, в таблице появятся значения –1 и 0. Откройте таблицу в режиме конструктора и задайте для свойства Формат значение Истина/Ложь или Да/Нет.
При связывании в одном поле не может быть несколько значений. Список значений обрабатывается как одно значение и помещается в тестовое поле. Значения в поле разделяются точкой с запятой.
В случае усечения данных в столбце попытайтесь увеличить его ширину в режиме таблицы. Если устранить проблему таким образом не удается, возможно, причина в том, что числовое поле имеет тип «Длинное целое» вместо «Двойное с плавающей точкой».
Открыв таблицу в режиме таблицы, вы можете заметить, что некоторые поля содержат значение #ЧИСЛО! вместо фактического значения. Чтобы свести к минимуму количество значений NULL в таблице или избавиться от них совсем, выполните следующие действия:
Заключите в одинарные или двойные кавычки все нетекстовые значения, которые вы хотите сохранить как текстовые.
В ходе связывания выберите подходящий тип данных для каждого поля. Если выбран неверный тип данных, конечный столбец может содержать только значения #ЧИСЛО! во всех строках.
В приведенной ниже таблице содержится список случаев, в которых будут появляться ошибки #ЧИСЛО!.
Тип отсутствующих значений
Тип конечного поля
Числовое поле или поле даты
Замените все текстовые данные значениями, соответствующими типу данных конечного поля, и повторите попытку связывания.
Замените все значения даты числовыми значениями и повторите попытку связывания.
Замените все числовые значения значениями даты и повторите попытку связывания.