powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как импортировать бинарный файл в таблицу Access2000
6 сообщений из 6, страница 1 из 1
Как импортировать бинарный файл в таблицу Access2000
    #32878930
WSK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WSK
Гость
Всю жизнь работал с Pascal for DOS, с VB практически не знаком, хотя с Access дружу давно. Сейчас потребовалась помощь!

Вопрос : Как импортировать бинарный файл в таблицу Access2000?

Дано : Есть некий файл с постоянной структурой (самопальная база).
Размер записи, количество и типы полей известны (long,double и т.д.).
Необходимо : Импортировать файл в таблицу Access2000, а еще лучше Создать связь с файлом. При чем программно ...

Может у кого есть наработки?
...
Рейтинг: 0 / 0
Как импортировать бинарный файл в таблицу Access2000
    #32878931
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Вывалить в текстовый файл. Из самого аксесса импортировать или прилинковать.

2. Если в вашем паскале фор дос можно использовать библиотеки как в VBA, то можно програмно открыть таблицу и в цикле по строкам записывать в нее значения, благо внутри вашей программы вся структура данных под вашим контролем.
...
Рейтинг: 0 / 0
Как импортировать бинарный файл в таблицу Access2000
    #32878939
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я бы через WINAPI открыл и читал бы спокойно в VBA-шные структуры
...
Рейтинг: 0 / 0
Как импортировать бинарный файл в таблицу Access2000
    #32878941
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, на стороне аксесс в VBA можно открыть двоичный файл и читать его нужными кусками.
...
Рейтинг: 0 / 0
Как импортировать бинарный файл в таблицу Access2000
    #32878986
WSK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WSK
Гость
Alexey Shя бы через WINAPI открыл и читал бы спокойно в VBA-шные структуры
Если бы умел, то не спрашивал бы.
И если бы была возможность выгнать из чужой программы данные в стандартном формате импорта Access, вопроса не возникло бы.

Порыл слегка. Тут нашел кое что, попробовал:

Type CheckRecord
Id As Long
SE As Long
DN As Long
CT As Long
DC As String * 20
DW As Long
End Type
.....
Dim intFile As Integer
Dim myRec As CheckRecord
Dim strMsg As String

intFile = FreeFile()
Open "file.sdd" For Binary As #intFile
Get #intFile, 1, myRec
Close #intFile
strMsg = "From file: " & vbNewLine
With myRec
strMsg = strMsg & "ID = " & .ID & vbNewLine
strMsg = strMsg & "Sum = " & .CS & vbNewLine
End With

MsgBox strMsg
....

Из файла читается первая запись и выводится в MsgBox.

Господа специалисты!
Если действительно хотите помочь человеку без знания VB, то может кто подскажет реальный пример, чтобы читать все записи и заносить данные в таблицу Access?
Раз уже разобрался с вышеуказанным примером, то и с вашим постараюсь разобраться.
...
Рейтинг: 0 / 0
Как импортировать бинарный файл в таблицу Access2000
    #32879219
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Раз уж вышеприведенный пример правильно читает вашу струтруру файла, стало быть дело сделано!

Осталось немного.

Открыть таблицу как Recordset на запись. В цикле, пока не конец вашего файла брать из него очередную порцию в структуру Get'ом и тут же класть в Recordset'овские поля.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
i - переменная цикла
rs - Recordset, открытый по таблице. структура таблицы совпадает со структурой данных описанных в Type.

while not (не знаю, как ловить конец файла при двоичном чтении. можно по On Error Goto EOF_Label)
    'прочитать очередную порцию из вашего файла
    Get #intFile, i, myRec
    'Добавить пустую новую запись
    rs.AddNew
    'положить в нее значения из струтуры
    rs!Id = myRec.Id
    rs!SE = myRec.SE
    ...
    'заботливо сохранить положенное
    rs.Update
    'перейти на следущую порцию в вашем файле
    i = i +  1 
wend

rs.Close
Close #intFile
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как импортировать бинарный файл в таблицу Access2000
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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