Но вот следующий вопрос. Мне нужно на основе этих данных сделать гистограмму и график. Нарисовать это дело ручками несложно, благо опыт рисования кое-какой уже есть. Весь вопрос в том, как получить из таблицы эти данные. Получать из формы (из DataGrid)? Или все же открыть отдельный коннект на базу и получать уже оттуда? Больше склоняюсь к второму варианту, ибо насколько я помню обращение к формам идет медленнее чем к памяти. Но тут фактически пойдет обращение к файлу... Ну в общем решил делать по второму варианту. И вот тут я "поплыл". Вроде нашел подходящий класс - Recordset. А вот как с ним работать никак не разберусь. Помогите пожалуйста...
- Код: Выделить всё
Dim rs1 As ADODB.Recordset
Set rs1 = New ADODB.Recordset
rs1.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb;Persist Security Info=False"
rs1.CursorLocation = adUseClient
rs1.Open "Таблица1", "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\db1.mdb;Persist Security Info=False", , , adCmdTable
Set Adodc1.Recordset = rs1 'вывожу в таблицу, чтобы посмотреть как работает. Этот способ работает нормально)
Set DataGrid1.DataSource = rs1
Это мы загрузили в recordset таблицу. А как теперь можно сделать по ней выборку? Причем так, чтобы я в дальнейшем имел прямой доступ в ним?
Есть еще вариант с ADODB.Connection
- Код: Выделить всё
Dim rs1 As ADODB.Recordset
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=База данных MS Access;Mode=ReadWrite;Initial Catalog=" & "C:\db1.mdb"
cnn.CursorLocation = adUseClient
cnn.Open Таблица1, , , 3 'вот здесь ошибка. Не понимаю какой параметр ставить. Поэтому работоспособность нижеследующего кода оценить не могу
Dim strQuery As String
strQuery = "SELECT * FROM Таблица1 ORDER BY [ФИО Литейщика]" 'запрос пристрелочный, поэтому я просто вывожу всю таблицу, только отсортированную по фамилии
Rs = cnn.Execute(strQuery)
Set DataGrid1.DataSource = Rs ' тут просто пытаюсь вывести результат в DataGrid, чтобы посмотреть как работает
А может быть присоединить базу через RecordSet а оттуда уже и брать данные для DataGrid и для выборки, которая пойдет на гистограмму/график?
Я не понимаю почему, но по RecordSet'у почему то не нашелся гайд, в котором были бы описаны все, ну или хотя бы основные, свойства/методы/параметры... Хотя тут скорее сработал фактор криворукости и я его просто не нашел, ибо до конца не понимаю что конкретно надо искать.
Выручайте, други... в голове каша уже)) Просто с БД столкнулся вообще впервые, а делать надо. Буду благодарен за любой дельный совет или ссылки на источники.