|
|
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
Всем привет! Есть таблица table_name. Мне нужно получить список внешних ключей по этой таблице. Сразу скажу, что обращение к БД information_schema мне не подходит по определенным причинам. В инете нашел такое: "Список ограничений внешнего ключа таблицы T можно также вывести при помощи команды: Код: sql 1. Ограничения внешнего ключа выводятся в комментариях к таблице" Выполнил такой запрос. Не пойму, где там внешние ключи? В поле comment пусто. Остальная информация вообще к внешним ключам никакого отношения не имеет! Внешние ключи по рассматриваемой таблице 100% есть. Всем заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2014, 18:29:51 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
А show create table констрейнты не показывает? что-то не помню. Индексы точно показывает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2014, 18:46:47 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
Показывает. Но я create table собираю "ручками". И мне нужно "самостоятельно" вытащить внешние ключи ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2014, 18:47:36 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
urukhay, ЯННП :) Если вы сами собираете create, то таблицы на момент собирания ещё нет. Так какие могут быть на ней внешние ключи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2014, 18:51:39 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
urukhayобращение к БД information_schematanglirshow create tableИмхо, больше малокровных путей нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2014, 19:09:15 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
авторЯННП Шо це? ))) авторЕсли вы сами собираете create, то таблицы на момент собирания ещё нет. Так какие могут быть на ней внешние ключи? Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. авторИмхо, больше малокровных путей нет. Обращение к information_schema нефига не малокровный )) Я создавал недавно топик, когда написал функцию дампа чисто через таблицы information_schema. И на больших базах скрипт не успевал выполняться, падал. Мне посоветовали использовать SHOW-запросы. Переписал. Стало лучше. Думал любые DDL можно получить с помощью SHOW ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 13:39:12 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
urukhayОбращение к information_schema нефига не малокровный ))Все относительно. По сравнению с разбором исходников MySQL и чтением его сырых файлов - сущий пустяк :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 13:42:14 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
urukhayЯ создавал недавно топик, когда написал функцию дампа чисто через таблицы information_schema. И на больших базах скрипт не успевал выполняться, падал.Возможно, есть смысл попробовать создавать копию этих таблиц с необходимыми индексами перед основной работой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 13:43:52 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
авторВсе относительно. По сравнению с разбором исходников MySQL и чтением его сырых файлов - сущий пустяк :) Ну если так, то, действительно, пустяк )) авторВозможно, есть смысл попробовать создавать копию этих таблиц с необходимыми индексами перед основной работой. А вот тут что-то не совсем понял идею. Можно чуть поподробнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 13:47:10 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
urukhayавторВозможно, есть смысл попробовать создавать копию этих таблиц с необходимыми индексами перед основной работой. А вот тут что-то не совсем понял идею. Можно чуть поподробнее?Нужные таблицы из information_schema скопировать в обычные таблицы. Создать необходимые индексы. Потом использовать эти таблицы вместо information_schema. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 13:49:33 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
Ааа. Интересная идея! Но тут тоже есть подводный камень: при изменение структуры таблицы придется вручную вносить эти изменения в скопированные таблицы. Но буду пробовать и сравнивать производительность. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 14:08:22 |
|
||
|
Получение списка внешних ключей по таблице
|
|||
|---|---|---|---|
|
#18+
urukhayпри изменение структуры таблицы придется вручную вносить эти изменения в скопированные таблицыЗачем вручную? Вставьте этот фрагмент непосредственно перед основной работой и пусть все вместе выполняется каждый раз, когда это надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2014, 16:13:29 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38804812&tid=1833943]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
137ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 466ms |

| 0 / 0 |
