sqlite插入重复的条目

时间:2013-01-27 04:30:56

标签: java sqlite

我在sqlite database.i中插入数据时遇到问题。我创建了一个包含3列studentid,studentname和studentmarks的表。当我为两个不同的学生插入相同的标记时,它不会插入重复的entery。如何解决这个问题它将接受学生姓名和学生marks.thanks

上的重复条目

3 个答案:

答案 0 :(得分:3)

由于您有学生ID,因此无需拥有学生姓名。该表应具有课程ID /名称列,以将特定标记与学生和课程相关联。

基本上你需要三张桌子:

Student (ID, Name)
Course (ID, Name)
Mark (studentID, courseID, studentMark)

这称为third normal formhttp://en.wikipedia.org/wiki/Third_normal_form

但是,如果您只想为数据库创建一个表,那么您仍然必须在表中添加课程ID和/或名称,并确保主键包含学生ID和课程ID。

答案 1 :(得分:0)

您可能已使用主键创建了表作为StudentID。在这种情况下,您不能为单个学生标记插入多行。您需要重新创建表格,删除学生ID

的主键/唯一值等限制

您还应该为Students创建一个单独的表,其中包含一个主键(Student ID),您只需插入学生数据(每行代表一个学生)。 然后为Student_marks创建一个表,其中Student与Marks的关系是One-To-Many,这意味着Students_Marks中的多行属于Students表中的单行

答案 2 :(得分:0)

检查标记列是否存在唯一约束/或者如果上述任一情况为真,则您将标记设置为主键,则应删除唯一约束/主键以使代码按预期工作(在table_name上删除索引index_name)。