所以我有四个包含以下字段的表
Student_Master
---------------------
Student id(Primary Key)
Student Name
Class Id
Document Upload
Student Marks
------------
Marks_Id
Student_Id(Foreign Key)
Subject_ID(Foreign Key)
Marks
Subject
-----------
Subject ID
Subject Name
Class
----------
Class ID
Class Name
我在页面上的表单有以下字段:
Student Name
Class
Subject
Marks
Doc Upload
现在我如何将值插入到多个表中,并且它们之间有外键引用。项目在ASP中,我使用的是SQL Server
答案 0 :(得分:1)
First Try starting inserting the values from the parent table and then move to the secobdary tables.
Student_Master and Subject would be the parents to Student_Marks
答案 1 :(得分:0)
首先将它们插入父表中,其中定义了主键。之后,只要符合约束条件,您就可以随意填写子表和不相关的表。根据我所知,Student_Master和Subject将成为Student_Marks的父母。
如果您正在询问如何从表单写入数据库,那么您需要进行一些研究。查看ADO.NET以及完成此任务所需的类/对象。
无论您做什么,都不要将SQL与用户值一起分散(内联SQL)。使用paramterized存储过程。
答案 2 :(得分:0)
您可以编写一个存储过程,接受参数"学生姓名,班级,科目,标记,文档上传"。首先将数据插入表" Class",SCOPE_IDENTITY()返回最后插入的ID值;将其插入变量并将其插入" Student_Master"表。其他表也遵循相同的方式。查询将如下所示:
Declare @Scope_Class INT
INSERT INTO Class ([Class Name]) VALUES ('Class 1')
SET @Scope_Class =SCOPE_IDENTITY()
INSERT INTO Student_Master ([Student Name], [Class Id], [Document Upload]) VALUES ('Stud 1' , @Scope_Class, 'Doc 1')