我有一个表,Contacts
,主键为ContactID
,这是一个标识列。我有另一个表Person
,主键为PersonID
,这是ContactID
的外键。当我在Person
中插入记录时,我想PersonID
从中提取相应标识Contact
。更新SQLServer中的外键,如Access
在Access中,我只需创建一个引用这两个表的查询,然后它将使用identity(autonumber)列中的相应值填充外键列。
SELECT Person.PersonID, Person.FirstName, Person.MiddleName, Person.LastName, Contact.ContactID, Contact.EmailAddress, Contact.PhoneNumber FROM (Contact INNER JOIN Person ON Contact.ContactID = Person.PersonID);
我们怎样才能在2008年的SQLServer R2实现这一目标?我一直在编程触发器来更新密钥,但似乎应该有更好的方法。
非常感谢您的协助。
让我们在我的问题中将查询定义为'qPerson'。在Access中,如果我只是使用'INSERT INTO qPerson(FirstName,LastName,PhoneNumber)VALUES(“Bobort”,“Bogobin”,“N/A”)',键会自动填入。有没有办法在SQLServer中使用触发器或其他内置方法而不是使用'OUTPUT'子句来维护这种相同的简单语法? – Bobort 2012-02-02 15:06:11