0

所以我有四个表具有以下字段

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

4

3 回答 3

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
于 2013-08-26T05:29:09.070 回答
0

首先将它们插入父表中,其中定义了主键。之后,只要符合约束条件,就可以随意填写子表和无关表。据我所知,Student_Master 和 Subject 将是 Student_Marks 的父母。

如果您询问如何从表单写入数据库,则需要进行一些研究。查看 ADO.NET 以及完成此操作所需的类/对象。

无论您做什么,都不要从用户值中将 SQL 拼凑在一起(内联 SQL)。使用参数化存储过程。

于 2012-09-05T04:48:02.643 回答
0

您可以编写一个接受参数“Student Name, Class, Subject, Marks, Doc Upload”的存储过程。首先向表“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')
于 2012-09-05T05:53:31.783 回答