Possible Duplicate:
07000
为学校做一个项目所以任何帮助都会非常感谢你!
我有两个表 – 如何插入两个表?所以两个表都是链接的.
第一个表称为Customer,主键称为CID,自动递增
CREATE TABLE [dbo].[Customer]( [CID] [int] IDENTITY(1,1) NOT NULL,[LastName] [varchar](255) NOT NULL,[FirstName] [varchar](255) NOT NULL,[MiddleName] [varchar](255) NULL,[EmailAddress] [varchar](255) NOT NULL,[PhoneNumber] [varchar](12) NOT NULL CONSTRAINT [PK__CInforma__C1F8DC5968DD69DC] PRIMARY KEY CLUSTERED (
第二个名为Employment的表,其外键链接到父表
CREATE TABLE [dbo].[Employment]( [EID] [int] IDENTITY(1,[CID] [int] NOT NULL,[Employer] [varchar](255) NOT NULL,[Occupation] [varchar](255) NOT NULL,[Income] [varchar](25) NOT NULL,[WPhone] [varchar](12) NOT NULL,CONSTRAINT [PK__Employme__C190170BC7827524] PRIMARY KEY CLUSTERED (
解决方法
你需要做这样的事情:
DECLARE @NewID INT INSERT INTO Customer(LastName,FirstName,......) VALUES(Value1,Value2,.....) SELECT @NewID = SCOPE_IDENTITY() INSERT INTO Employment(CID,Employer,.....) VALUES(@NewID,ValueA,..........)
SCOPE_IDENTITY:返回插入同一范围内的标识列的最后一个标识值.范围是一个模块:存储过程,触发器,函数或批处理.因此,如果两个语句在同一存储过程,函数或批处理中,则它们在同一范围内.