本文介绍了将行插入到具有外键的表中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


我有两个名为Tbl_manager和Tbl_subteam的表,其关系为1到n



Tbl_manager表:

折叠|复制代码



UserId uniqueidentifier --->主键

name_manager nvarchar(50)

familli_manager nvarchar(50)

Code_m nvarchar(256)

, ...



------------------------------- ---------

Tbl_SubTeam表:

折叠|复制代码



ID_number int

SubTeam_name nvarchar(50)

SubTeam_Familli nvarchar(50)

Code_m nvarchar(50)

Manage_Id uniqueidentifie ---> foriegn key

,...





我的问题是:



如何插入与tbl_manager相关的Tbl_subteam表?我尝试使用follow命令,但是错了:



HiI have two tables with names Tbl_manager and Tbl_subteam that have relation 1 to n

Tbl_manager Table:
Collapse | Copy Code

UserIduniqueidentifier ---> primary Key
name_managernvarchar(50)
familli_managernvarchar(50)
Code_mnvarchar(256)
,...

----------------------------------------
Tbl_SubTeam Table:
Collapse | Copy Code

ID_numberint
SubTeam_namenvarchar(50)
SubTeam_Famillinvarchar(50)
Code_mnvarchar(50)
Manage_Iduniqueidentifie ---> foriegn key
,...


my problem is :

how I Could Insert into Tbl_subteam table that is related to tbl_manager?. I tried with follow command , but is wrong :

INSERT INTO Tbl_subteam(SubTeam_name, SubTeam_Familli, Code_m, Manage_Id)
VALUES(@SubTeam_name,@SubTeam_Familli,@Code_m,IDENT_CURRENT('Tbl_Manager'))
where User_Name=@Username

推荐答案


DECLARE id uniqueidentifier;
SET @id = NEWID();
INSERT INTO Tbl_manager (UserId, name_manager, famili_manager, Code_m) VALUES (@id, N'Name', N'Family', N'Code');
GO
INSERT INTO Tbl_SubTeam (SubTeam_name, SubTeam_Familli, Code_m, Manage_Id) VALUES (N'MySubteam', N'STFamily', N'MyCode', @id);
GO





希望这有帮助。



Hope this helps.


Quote:

INSERT INTO Tbl_subteam(SubTeam_name,SubTeam_Familli,Code_m,Manage_Id)

VALUES (@ SubTeam_name,@ SubTeam_Familli,@ Code_m,IDENT_CURRENT('Tbl_Manager'))

其中User_Name = @用户名

INSERT INTO Tbl_subteam(SubTeam_name, SubTeam_Familli, Code_m, Manage_Id)
VALUES(@SubTeam_name,@SubTeam_Familli,@Code_m,IDENT_CURRENT('Tbl_Manager'))
where User_Name=@Username





据我所知,你不能在 INSERT 语句中有一个 where 子句。你必须更新已经存在的记录。



使用关节获取ID并更新记录。



As far as i know,you cannot have a where clause in INSERT statement.You have to update the already existing record.

Use joints to get the ID and update the record.


这篇关于将行插入到具有外键的表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-16 07:48
查看更多