Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2009, 16:26   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
Вопрос Выбор колонок в dbgrid

Такой вопрос. У меня есть четыре таблицы *.db. На форме один dbgrid. Можно ли сделать так, чтобы я сам указал в какие колонки dbgrid-а заносились данные из конкретных колонок из четырех таблиц? dbgrid будет только один. Можно ли такое сделать?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 18.04.2009, 17:23   #2
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

По моемоу запрос Query должен помочь в этом случае,примерно так
Query1.SQL.add(select Table1.Pole1, Table2.Pole2, Table3.Pole3, Table4.Pole4 ');
Query1.SQL.add('FROM Table1, Table2, Table3, Table4');

Меняшь запрос каждый раз как тебе нужно и закрываешь открываешь для обновления в сетке.
Где то примерно так.
Также посмотри http://programmersforum.ru/showthread.php?t=45935
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 18.04.2009, 17:25   #3
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

А без запроса? Кодом можно такое сделать?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 18.04.2009, 17:35   #4
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Без запроса, наверное врядли ведь происходит выборка полей из разных таблиц как я понял.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 18.04.2009, 17:42   #5
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Предположительно выборка должна идти по циклу. Например, пусть в одной из таблиц, например в колонке "Фамилия", есть 5 записей. Надо, чтобы в DBGrid, в колонку "Фамилия" заносились эти 5 записей. Думаю, что цикл я бы смог придумать, если знал как правильно присвоить имена колонок((
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 18.04.2009, 17:52   #6
Хитрец
Пользователь
 
Регистрация: 26.01.2009
Сообщений: 48
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Предположительно выборка должна идти по циклу. Например, пусть в одной из таблиц, например в колонке "Фамилия", есть 5 записей. Надо, чтобы в DBGrid, в колонку "Фамилия" заносились эти 5 записей. Думаю, что цикл я бы смог придумать, если знал как правильно присвоить имена колонок((
Если ты пищишь рабочий проект, то надо делать нормально с запросами это быстро и просто, если же ты это делаешь хоть бы как сделать, то можешь городить и цикл.

Сформулируй вопрос что тебе конкретно надо постараемся помочь. Хотя ARTInt тебе все написал как сделать.
Хитрец вне форума Ответить с цитированием
Старый 18.04.2009, 18:04   #7
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Хорошо, формирую конкретно вопрос. Есть четыре таблицы, созданные через Database Desktop:
table_information(колонки-Фамилия, Имя, Отчество),
table_marks(колонки-ДВОЕК,ТРОЕК,ЧЕТВЕРОК,ПЯТЕРОК),
table_critery(колонки-СБ,КУ,У,О,ЧО),
table_period(ПРЕДМЕТ,ГОД).
На форме есть один(!) DBGrid. В этом гриде есть колонки: Фамилия, Имя, Отчество, ДВОЕК, ТРОЕК, ЧЕТВЕРОК, ПЯТЕРОК, СБ, КУ, У, О, ЧО, ПРЕДМЕТ, ГОД. Мне надо, чтобы записи, имеющиеся в таблице, например, table_information в колонке "Фамилия" по порядку занеслись в колонку "Фамилия", которая имеется в DBGrid-e, а записи, которые есть в таблице, например, table_critery в колонке "СБ", занеслись по порядку в колонку "СБ", которая есть в DBGrid-e. И так далее. То есть, чтобы DBGrid отображал содержимое этих таблиц в одной таблице на форме (жалко, что нельзя каждой колонке присвоить имя поля таблицы =(( )Вот. Так понятнее?))
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 18.04.2009, 19:33   #8
Хитрец
Пользователь
 
Регистрация: 26.01.2009
Сообщений: 48
По умолчанию

Query1.SQL.add('SELECT *');
Query1.SQL.add('FROM table_information, table_marks, table_critery, table_period);

Если все таблицы в одном файле, то так. Если в разных то перед названием таблиц указать название файлов баз [Файл1.db].table_information, [Файл2.db]. table_marks ...... и т.д.
Хитрец вне форума Ответить с цитированием
Старый 18.04.2009, 19:45   #9
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Значит без запросов никкак?(((
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 18.04.2009, 20:07   #10
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Только если ты заменишь DBGrid на StringGrid, тогда да можешь заполнить по циклу.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сохранять ширину колонок у Grid adigozalov БД в Delphi 1 27.03.2009 15:30
Как в VB6 получить доступ к содержимому колонок в ListBox'е? AndreyMust19 Помощь студентам 3 21.03.2009 00:06
Синхронизация колонок eImage Microsoft Office Excel 4 13.03.2009 20:42
Звук без колонок Лубышев Помощь студентам 1 22.01.2008 19:50
как управлять звуком правой и левой колонок с помощью TrackBar? ZhekON Win Api 8 12.04.2007 14:50