Первый дает вам больше гибкости.
1) Вы должны использовать первый метод, если вы создаете таблицы в таком порядке, чтобы ссылочная таблица создавалась после ее ссылочной таблицы.Если у вас есть циклы в ваших ссылках, то, возможно, не будет способа избежать этого.Если циклов нет, то существует порядок, в котором все ссылочные таблицы создаются перед их ссылочными таблицами, но вы, возможно, не захотите тратить время на выяснение, что это за порядок и перестановка ваших сценариев.
2) Это не таквсегда вы точно знаете, какие индексы вам понадобятся при создании таблицы.Когда вы создаете индексы, обычно хорошей идеей является измерить выигрыш в производительности некоторых реальных данных и, возможно, попробовать несколько разных индексов, чтобы увидеть, какие из них работают лучше.Чтобы эта стратегия работала, вам нужно сначала создать таблицу, вставить некоторые данные, а затем вам нужно будет изменить индексы для тестирования.Отбрасывание и воссоздание таблицы не так практично, как ALTER TABLE в этой ситуации.
Кроме того, на самом деле нет никакой разницы, и если вы начинаете с нуля, нет особой причины отдавать предпочтение одному над другим.,Полученный индекс одинаков в любом случае.