Я хочу объединить таблицу IndirectFlights в PriceTable. У меня нет идентификаторов, введенных в SourceTable (IndirectFlights), и я еще не установил PK для него. Столбец ID для PriceTable является столбцом Identity (1,1) и также является Первичным ключом.Как слить таблицы и предотвратить столкновение идентификаторов
Qs1 Как ввести идентификаторы в столбце источника, чтобы они не столкнулись с идентификаторами целевой таблицы (PriceTable)? Я думал об использовании последовательности, но потенциально мог столкнуться в будущем. Qs2 Могу ли я выбрать, какие столбцы следует объединить, или я должен объединить все столбцы из таблицы источников?
Target Table (PriceTable) Columns
IDAirport_ICAO_Code,Airline_ICAO_Code,Departure,Price,RouteStatus,DateRowModified
Source Table (IndirectFlights) Columns
IDAirport_ICAO_Code,Destination,Airline,Airline_ICAO_Code,RouteStatus,Connecting Airport
Edit: Я просто запустить следующий Союз Высказывание в качестве альтернативы использованию Merge.
Select ID,Airport_ICAO_Code,Airline_ICAO_Code,RouteStatus
From RoughworkPriceTable
Union All
Select ID,Airport_ICAO_Code,Airline_ICAO_Code,RouteStatus
From RoughworkIndirectFlights;
код работал, но я заметил, что столбец ID принял нулевые значения из IndirectFlights.ID Eventhough У меня есть ID столбцов установлена не Null.
Может ли это объяснить это. Также может кто-то расширить, как я могу создать новую постоянную таблицу из этого заявления All Union.
Какую базу данных вы используете - MS SQL Server? Является ли слияние одним, или его нужно повторить? –
, если вам нужно часто их объединять, посмотрите на наличие уникального идентификатора в качестве первичного ключа, риск столкновения почти не существует. – Fredou
Im using Server express 2014. Слияние является одним, но я, возможно, собираюсь снова слить таблицы в зависимости от того, введены ли новые значения в таблицу IndirectFlights. – frustrationmultiplied