Конференция "Начинающим" » Доступ к таблице Access через ListView [D7, Access]
 
  • Евгений (29.11.08 16:13) [0]
    Здравтвуйте!!!
    Пишу программу, используя БД Access, ADOConnection, ADOTable, DataSource. Как мне вывести в TreeView имена всех таблиц из БД Access, и по нажатию на эти имена в ListView выводить все записи в режиме VsReport. Сижу над этой задачей уже около 3-х недель, я только начинающий, и хочется узнать все и сразу, но не получается)))
    Надеюсь на вашу помощь.
    Заранее благодарю!!!
  • b z (29.11.08 16:24) [1]

    > Сижу над этой задачей уже около 3-х недель
    Пора сменить профессию.
  • sniknik © (29.11.08 16:35) [2]
    > Доступ к таблице Access через ListView
    доступ к содержимому холодильника через заднюю стенку

    я еще начинающий слесарь, хочется всего и сразу, и уже 3-ю неделю бьюсь над этой задачей. и ничего не  получается.


    и слава богу, что не получается, может хоть сейчас бросишь заниматься маразмом, и потратишь время на изучение того как это вообще делается.
  • Palladin © (29.11.08 16:42) [3]

    > доступ к содержимому холодильника через заднюю стенку

    какую стенку? :) через телевизор
  • Leonid Troyanovsky © (29.11.08 16:49) [4]

    > Palladin ©   (29.11.08 16:42) [3]

    > > доступ к содержимому холодильника через заднюю стенку

    > какую стенку? :) через телевизор

    :) , это хорошо.

    В каморке у папы Карлы очаг был нарисованный,
    т.е. можно и через задн...юю стенку.

    --
    Regards, LVT.
  • Юрий Зотов © (29.11.08 17:16) [5]
    > Евгений   (29.11.08 16:13)

    1. Зачем выводить данные в обычные контролы, если специально для этого существуют DB-контролы? Такому контролу надо просто назначить DataSource и он сам все покажет.

    2. Зачем выводить список таблиц в TreeView? У таблиц нет никакой иерархии, поэтому вполне подойдет обычный плоский список. Например, TDBListBox.

    3. А для отображения содержимого таблицы удобно использовать TDBGrid.

    Итого, Ваша задача решается минут за 5. Чувствуете разницу между двумя подходами? Важно выбрать правильный.
  • b z (29.11.08 17:33) [6]

    > Зачем выводить список таблиц в TreeView?
    Они находяться базе, а это уже иерархия ;)
  • Smile (29.11.08 19:01) [7]
    > b z   (29.11.08 16:24) [1]
    > b z   (29.11.08 17:33) [6]

    Иногда лучше жевать...
  • stas © (29.11.08 19:10) [8]
    Слишком много вопросов сразу ). Что конкретно не получается?
    Список таблиц: AdoConnection1.GetTableNames
    Наполнить какой-либо объект данными - пробежаться циклом по записям DataSet, но лучше использовать DB контролы см [5]
  • b z (29.11.08 19:19) [9]

    > Smile   (29.11.08 19:01) [7]
    Интересно, а почему вы не аппелировали к [1] и далее, т.к. по сути это тоже, что и [0], или все-же - > Иногда лучше жевать...?
    ... действительно интересно, а не спора ради ...

  • > я только начинающий, и хочется узнать все и сразу, но не
    > получается)))

    Ленина тогда в пример бери....
  • Ega23 © (30.11.08 10:08) [11]

    > Иногда лучше жевать...


    Это... А чем тебя [6] не устроило? Объекты БД - это по-твоему не иерархическая структура? Даже если не брать всякие наследования таблиц в пост-реляционных СУБД, иерархия всегда присутствует: Сервер -> База -> Схема -> Таблица (вьюха, хп, функция). У таблиц и вьюх - триггеры. У таблиц - ограничения и индексы.
    И т.п.

    Весьма чёткая иерархическая структура.
  • Ega23 © (30.11.08 10:12) [12]

    > Зачем выводить список таблиц в TreeView? У таблиц нет никакой
    > иерархии, поэтому вполне подойдет обычный плоский список.
    >  Например, TDBListBox.


    Ну, например, для разработки визуального проектировщика БД, a-la какой-нибудь Power Designer.
    Лично я для такой задачи интерейс в своё время по-другому строил, не ListView, а TTreeView с набором вспомогательных фреймов использовал. Но это уже личные предпочтения: не люблю ListView...  :)
    Но это не означает, что такой интерфейс неприемлем в принципе.
    Так что не вижу ничего плохого. Другое дело, что у меня есть очень серьёзные сомнения в квалификации автора. Так сказать, задачка не по силам. Но это моё ИМХО, опять же.
  • Юрий Зотов © (30.11.08 18:02) [13]
    > Ega23 ©   (30.11.08 10:12) [12]

    > Ну, например, для разработки визуального проектировщика БД, a-la какой-
    > нибудь Power Designer.

    Угу. Еще существуют связи типа "ссылка на родителя", "master-detail" и прочие подобные. И еще есть куча задач, где вывод имен таблиц в дерево очень логичен и удобен.

    Но есть один маленький вопросик - Олег, ты сабж читал?

    Наверняка читал. Тогда есть другой маленький вопросик - какой, нахрен, Power Designer? Человек с элементарной задачей 3 недели мучается, совсем еще новичек - какой тут может быть Power Designer?

    И есть третий маленький вопросик - человек столкнулся с конкретной проблемой. Которая вовсе не проблема, но для него - пока еще проблема. Так что ему нужнее - конкретная маленькая подсказка, или философское обсуждение его вопроса с точки зрения расширяемости вселенной?

    Которое он, к тому же, пока еще не поймет.
  • Ega23 © (30.11.08 18:15) [14]

    > Но есть один маленький вопросик - Олег, ты сабж читал?


    А, ччёрт, не так прочитал. TreeView не заметил...

    Ну тогда таки да, TTreeView + TDBGrid.

    Но. Если это не реальная задача, а так, для себя, то я настоятельно рекомендовал бы автору сначала попробовать TDBGrid для вывода данных, а потом - аккурат TListView. Компонент такой, ... Богатый на "всякое". Если один раз по-серьёзному разберётся - потом очень пригодится.
 
Конференция "Начинающим" » Доступ к таблице Access через ListView [D7, Access]
Есть новые Нет новых   [134477   +40][b:0][p:0.001]