|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
|
Как сделать, чтобы отображались не цифры, а названия городов29.03.2012, 11:48. Показов 4819. Ответов 33
Метки нет (Все метки)
Добрый день. Глупый вопрос: пишу я, например, программу для работы с БД (ADO, MS Access).
Создаю в Access две таблицы: первая/главная (по полям) - Ключ, ФИО, город проживания. Вторая таблица - Ключ, город. Связываю эти таблицы "один-ко-многим". Кидаю на форму компонент DBGrid + остальные, в колонке город проживания вижу индекс города из второй таблицы. Как сделать, чтобы отображались не цифры, а названия городов собственно? Только через ADOQuery? Или еще как? За ранее спасибо. Микропроект в приложении.
0
|
|
| 29.03.2012, 11:48 | |
|
Ответы с готовыми решениями:
33
Как сделать, чтобы через базу данных отображались картинки в проекте Delphi? Можно ли сделать, чтобы свойства созданного мной класса как-то отображались в инспекторе объектов на делфи?
|
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|
| 29.03.2012, 12:12 | |
|
1
|
|
|
70 / 70 / 13
Регистрация: 21.12.2011
Сообщений: 188
|
|
| 29.03.2012, 12:15 | |
|
Можно прописывать запросы в AdoQuery в Delphi. Можно создавать запросы с помощью конструктора в MS Access и привязывать эти запросы к DBGrid. Вот пример второго варианта. Первый вариант наверное более гибкий и предпочтительнее. Код запроса inner join в MS Access .
1
|
|
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
||
| 30.03.2012, 05:34 [ТС] | ||
. Вопрос немного другой был: сделать это можно только посредством запросов? Другие "махинации" отсутствуют? (пример: компонент TDBLookupCombobox, там есть возможность указать отображаемое поле)Добавлено через 31 минуту Напишите, пожалуйста, запрос применимо к моему вложению выше.
0
|
||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|||
| 30.03.2012, 09:28 | |||
|
Geksod, а не пошел бы ты во фриланс?!
Хочешь чтоб помогли? - напиши запрос сам, а мы поможем найти ошибку! А что касается
0
|
|||
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
||||||
| 30.03.2012, 10:45 [ТС] | ||||||
|
Не нужно мне во фриланс, я просто ради любопытства делаю.
Вот, что у меня получилось, но все равно при выборке - в таблице идентификаторы, вместо нужной мне информации:
0
|
||||||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|
| 30.03.2012, 13:16 | |
|
))))))))))))))))))))
Добавлено через 22 секунды 1) двойной тыц по ADOQuery1 Добавлено через 1 минуту 2) правый тыц по окошку (вылетит после действия 1) со списком столбцов. Добавлено через 46 секунд 3) и финальный тыц по строчке "Add all fields"
0
|
|
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
||
| 02.04.2012, 06:05 [ТС] | ||
|
А кроме этого:
Добавлено через 10 минут Все эти "тыц'ы" не помогают.
0
|
||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|||
| 02.04.2012, 09:35 | |||
|
я тебе дал реальную помощь, проверенную на твоих же исходниках...
А если у тебя все равно не получается - то исключительно из-за радиуса кривизны рук... Добавлено через 1 минуту
0
|
|||
|
24 / 24 / 7
Регистрация: 01.11.2011
Сообщений: 53
|
||||||
| 02.04.2012, 13:14 | ||||||
|
Можно сделать так:
1
|
||||||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|
| 02.04.2012, 13:40 | |
|
_taddy, с его запросом с поста №6 все нормально. просто в ADOQuery1 остались поля от первого запроса...
я это попытался объяснить но безуспешно ))))
1
|
|
|
781 / 462 / 85
Регистрация: 20.02.2010
Сообщений: 974
|
|
| 02.04.2012, 18:53 | |
|
Вот если я вас правильно поняла... то так... создаете запрос в аксессе и подключаете его и все
1
|
|
|
781 / 462 / 85
Регистрация: 20.02.2010
Сообщений: 974
|
|||
| 02.04.2012, 19:05 | |||
|
steel_tiger,
Не по теме: Не обязательно умничать и ёрничать.... вас же не попросили всю прогу написать, чего вы его во фриланс отправляете?
1
|
|||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
||
| 03.04.2012, 09:09 | ||
|
N@tali, я человеку сказал в чем проблема,
еще немного поучитесь и все поймете
1
|
||
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
||||
| 04.04.2012, 12:28 [ТС] | ||||
TADOQuery нет желания, хочется обойтись одним.Добавлено через 2 минуты Это принципиально ![]() Добавлено через 1 минуту
0
|
||||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|||||
| 04.04.2012, 14:25 | |||||
|
1)
![]() 2) 3) 4) Заработаешь плохую привычку... почему плохую? ну подумай: ты устроился на работу... тебе дают программу, в которой надцать форм и на каждой по три грида, и говорят: в третьем, пятом и двадцатом гриде - информация неверно выводится! Исправь! Ты открываешь код... а ко всем гридам подключен один датасет! Ну и теперь представь: как ты будешь материться в процессе двухнедельного поиска нужного запроса?!
1
|
|||||
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
|||||
| 05.04.2012, 08:21 [ТС] | |||||
но после нескольких шуточных фраз (ну да ладно)![]() - подключением различных TADOQuery к одному TDataSource пренебрегаем?. - количество TADOQuery и TDataSource в режим "эконом" не переводим? ![]() Еще один вопрос назрел: в Access'е в "Схеме данных" связи между таблицами можно не создавать? Или наоборот НУЖНО это делать? Ведь запрос SQL все связи, как бы это сказать, "сам построит"? Получается в момент добавления новой записи в одну таблицу БД, необходимо "ручками" прописывать цифровой идентификатор нужного мне поля из другой таблицы, если я не хочу пользоваться "Lookup-фишками" TDBGrid'а? Добавлено через 2 часа 49 минут
0
|
|||||
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
||||||
| 05.04.2012, 09:15 [ТС] | ||||||
|
Назрел следующий вопрос:
![]() В структуре данных (рис. 1), все понятно с запросом:
0
|
||||||
|
45 / 44 / 2
Регистрация: 06.02.2012
Сообщений: 147
|
|||||||
| 05.04.2012, 09:30 | |||||||
А что касается И дело тут не в выполнении запросов (они то как раз от этого не зависят), а в целостности данных. к примеру, связь между User_Table и Table_Of_Town нужна для того, чтобы ты не мог в таблицу User_Table в поле Gorod_Projivaniya вставить значение, которого нет в таблице Table_Of_Town. Добавлено через 6 минут а вообще, у тебя немного неправильно структура сделана )))) последний запрос вернет тебе фамилию-город-улицу столько раз, сколько улиц у тебя в городе. как бэ умножит результат первого запроса на количество улиц. да и вообще: при твоей архитектуре абсолютно нереально узнать на какой улице живет юзер. а все потому, что связи строить нужно в обратном порядке. если у тебя есть город, улица, дом, житель, то должно быть так: таблица жителя ссылается на дом, дом на улицу, улица на город. то есть от меньшего к большему.
1
|
|||||||
|
5 / 5 / 2
Регистрация: 27.08.2011
Сообщений: 75
|
|||||||
| 05.04.2012, 10:00 [ТС] | |||||||
|
Ну и получаем запрос (выводим результат так, как мы привыкли его видеть все-таки, т.е. ФИО, Город, Улица, Дом ):
0
|
|||||||
| 05.04.2012, 10:00 | |
|
Помогаю со студенческими работами здесь
20
Как сделать, чтобы в заголовках отображались даты, а в полях результаты? Можно ли так сделать? Как сделать чтобы в запросе отображались TOP100? Как сделать чтобы в календаре отображались праздники Как сделать чтобы картинки не отображались в низ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|