Я очень зеленый в области SQL, поэтому я не знаю, как на самом деле называется идея или тип, но я назову их таблицами передачи и попытаюсь объяснить, что я имею в виду, и мою проблему. Пожалуйста, поправьте меня!
Описание
3 стола.
Контакты: ID (первичный ключ), имя, фамилия, SSN и т. д.
Адрес: ID (первичный ключ), город, улица и т. д.
ContactsTransferAddress (сокращение: CTA): ID (первичный ключ), ContactID (внешний ключ), AddressID (внешний ключ)
Проблема
Теперь это просто упражнение... Пока я сделал хранимую процедуру, которая:
ALTER PROCEDURE [dbo].[AddAddress]
@Street varchar(MAX),
@City varchar(MAX),
@CID int, --ContactID
@AID int OUTPUT --AddressID
AS
BEGIN
INSERT INTO Addressess(Street,City) VALUES (@Street, @City)
SET @AID = SCOPE_IDENTITY()
INSERT INTO CTA(CID,AID) VALUES (@CID, @AID)
END
Есть ли способ заставить двух человек использовать один и тот же AddressID (AID) при размещении данных о соединении в CTA? Прямо сейчас я понимаю, что мой SP выше будет давать разные идентификаторы для каждого адреса. Но я не знаю, как иметь уникальные адреса.
Спасибо!