2010-02-25 2 views
2

Я работаю над базой данных MS.ms Доступ: как сохранить содержимое таблицы в массиве строк?

В какой-то момент мне нужно было создать модуль, содержащий динамический массив строк, данные для хранения в этом массиве должны быть доставлены из таблицы, я использую count (*) в этой таблице, чтобы определить размер динамического массива.

Мне нужно знать, как заполнить массив содержимым столбцов этой таблицы (называемых именами);

, чтобы сделать его более ясным: предположим, я объявлен массив как этот

dim myArray() as string 
redim myArray(myTable.count(*)) 

где моя таблица содержит два поля: ID, Имя

я хочу туАггау (0), чтобы держать содержание Имя в первой записи туАггау (1) держать содержание Имя во второй записи

и так далее

как это сделать?

+2

Мне любопытно, почему вы хотели бы сделать это и не использовать записи вместо. – Buggabill

+0

Я тоже. char char – Fionnuala

ответ

3

Я не уверен, почему вы хотели бы использовать массив, но вот способ заимствован из Microsoft article:

Dim objConnection as ADODB.Connection 
Dim objRecordSet as ADODB.Recordset 
Dim arrTest as variant 

Set objConnection = CurrentProject.Connection 
Set objRecordSet = New ADODB.Recordset 

objRecordSet.Open "SELECT * FROM YourTable" , objConnection, _ 
    adOpenStatic, adLockOptimistic 

arrTest = objRecordSet.GetRows 

objRecordSet.Close 

objConnection.Close 
+1

Я согласен, что это решение, но, Ala ABUDEEB, зачем вы хотите это сделать? – Fionnuala

+0

@Remou: потому что я хочу, чтобы моя база данных была динамичной для пользователей. Это простая учетная база, я хочу, чтобы пользователь мог добавлять столько разделов бухгалтерского учета, сколько захочет, не прося об этом разработчика, например, добавить раздел для учета экспорта и один раздел. поэтому новое имя раздела учета должно быть добавлено в таблицу, тогда массив принимает это содержимое и изменяет базу данных по мере необходимости –

+1

Я все еще не понимаю, зачем нужен массив, не можете ли вы просто обновить таблицу? Я часто разрешаю пользователям добавлять «разделы», например, в комбинированное поле и событие NotInList. – Fionnuala

Смежные вопросы