|
|
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Предположим в базе Access есть две таблицы, связанные по ключевым полям. Можно ли через SQL-запрос узнать имена этих ключевых полей? Или может быть возможно через SQL-запрос автоматически правильно извлечь данные из этих двух таблиц, т.е. получить в итоге одну "сводную" таблицу? Подскажите, кто знает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 14:05 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Какая связь ? ( 1:1 , 1:n, m:n ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 14:25 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
авторИли может быть возможно через SQL-запрос автоматически правильно извлечь данные из этих двух таблиц, т.е. получить в итоге одну "сводную" таблицу? Написать правильный запрос (читайте описание SQL для вашей БД) и он прямо-таки "автоматически" извлечет все нужные Вам данные в "одну "сводную" таблицу". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 15:00 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Связь пока - 1:1. авторНаписать правильный запрос (читайте описание SQL для вашей БД) и он прямо-таки "автоматически" извлечет все нужные Вам данные в "одну "сводную" таблицу". Что значит "читайте описание SQL для вашей БД"? SQL-запросы они вроде стандартные для любой БД. Можете привести пример такого "правильного запроса"? А то я пока кроме SELECT FROM ничего не знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 15:41 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Насколько я знаю, средства SQL для Access узнать какие поля являются ключевыми не позволяют. Вообще говоря это выходит за рамки стандартного SQL. В БД типа SQL Server и Oracle подобные вещи реализуются с помощью системных хранимых процедур, например sp_helpindex 'TableName' для SQL Server. Пользуйтесь объектами OLE DB и будет вам счастье. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 16:01 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Если 1 : 1 SELECT a.field1, a.field2, b.field1, b.field2 FROM a INNER JOIN b ON a.field3 = b.field3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 16:13 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
автор SELECT a.field1, a.field2, b.field1, b.field2 FROM a INNER JOIN b ON a.field3 = b.field3 Это конечно, хорошо, но имена ключевых полей не известны. Какие-нибудь варианты еще есть? Доступ к базе (к любой) у меня идет через ODBC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 16:36 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
авторЭто конечно, хорошо, но имена ключевых полей не известны. Не ставьте телегу вперед лошади. Когда люди пишут запрос, они по крайней мере, знают, чего хотят получить( конкретно, какие данные из каких таблиц), знают структкру базы. А фразы типа авторЭто конечно, хорошо, но имена ключевых полей не известны. Какие-нибудь варианты еще есть? наводят на мысль, что Вы ее не знаете. В этом случае Ваш вопрос (запрос) звучит типа: "Выбери мне то, не знаю - что, но что бы связано было" Изучите структуру базы, определитесь с конкретным запросом, спросите и Вам дадут конкретный ответ. P.S. Это конечно, хорошо, но имена ключевых полей не известны. [quot автор][/quot] А их может и не быть - разработчик придумал в голове связь двух таблиц но никак ее не обозначил (ни ключевых полей тебе, ни связи в структре данных, ничего). Но он выберет нужные ему данные запросом все равно ( вопрос о быстродействии не поднимается) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 17:56 |
|
||
|
Извлечение связанных таблиц
|
|||
|---|---|---|---|
|
#18+
Структура базы не известна (может быть любой). Исходные данные - только имя базы (имя ODBC-источника). Все остальное (таблицы, поля, записи) сочиняемая мной программа должна распознавать сама без каких-либо подсказок со стороны пользователя. Теперь конкретный вопрос: Сможет ли моя программа обычными средствами (ODBC+SQL) найти в базе связи между таблицами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2004, 18:43 |
|
||
|
|

start [/forum/topic.php?fid=57&tid=2035444]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 303ms |

| 0 / 0 |
