На основании вашего описания звучит так, как будто вам просто нужно добавить параметр -Recurse в вашу команду
Можно создать первичный ключ на двух столбцах: нажмите на оба столбца в представлении разработчика>, нажимают на pk
Или, Вы могли добавить ограничение на уникальность данных на 2 столбца:
ALTER TABLE [dbo].[RepresentativeData]
add CONSTRAINT [UK_Representative_repRecID_AppID] unique (repRecID,AppId)
go
Я предпочитаю составной первичный ключ, потому что он осуществляет это, значение действительно существует в других таблицах.
Как это:
create table stock
( item_id references items(item_id)
, warehouse_id references warehouses(warehouse_id)
, quantity number(12,2) not null
, constraint stock_pk primary key (item_id, warehouse_id)
);
Нет ничего неправильно с составным первичным ключом для этого but's, вероятно, легче в большинстве ситуаций создать единственный столбец первичного ключа так или иначе. Если у Вас не будет конкретных аппаратных ограничений, pk седло, вероятно, только улучшит производительность и легкий из maintainance.
Не забывайте полагать, что у Вас могут быть ситуации, которые не могут аккуратно соответствовать Вашей модели. Например, у Вас может быть запас, который Вы знаете, существует, но в настоящее время не знайте, какой склад это находится в, или в пути или еще не выделено или что бы то ни было. Или необходимо создать бизнес-правила, чтобы вместить это в составной первичный ключ или использовать столбец первичного ключа вместо этого.
Вы не должны создавать "неиспользованное" поле первичного ключа, но оно часто делает жизнь более простой. (Как Paul указывает T, у Вас были бы к указанному оба поля для удаления строки).
Я часто называю такие столбцы "PK", для создания их ограниченной утилиты очевидной.
Если Вы не делаете никакого вида запроса, для которого нужен он, Вам не нужен первичный ключ. Это делает это крошечным битом тяжелее для удаления записи однозначно, все же. Вы могли бы хотеть поместить ограничение на уникальность данных на item_id, warehouse_id, если Oracle позволяет это.
Как все сказал, можно создать основное устройство из 2 столбцов. Вы не должны создавать искусственный столбец автоприращения.
Кроме того, примите во внимание, что внешние ключи служат другой цели, чем первичные ключи. Таким образом, Вы не можете заменить первичный ключ 2 внешними ключами.