如何让学生和学生行为表通过事件表链接?

时间:2014-02-25 19:39:04

标签: python sql database sqlite foreign-keys

我相信我在那里的一部分,但我真的很不确定如何使事件成为一个链接学生和行为表的表。我在sqlite3中用python编写。

c.execute('''CREATE TABLE Student(StudentID整数PRIMARY KEY,Forename文本,姓氏文本,FormNumber文本,YearGroup文本,日期文本,FormTutor文本)''')

c.execute('''CREATE table Incident(学生ID整数,BehaviourID整数,日期文本)''')

c.execute('''CREATE TABLE Behavior(BehaviourID integer PRIMARY KEY,BehaviourType text,BehaviourDescription text)''')

1 个答案:

答案 0 :(得分:1)

我认为你主要拥有它(如果我理解你的问题)。看看这个:

c.execute('''
CREATE TABLE Student (
    StudentID integer PRIMARY KEY, 
    Forename text, 
    Surname text, 
    FormNumber text, 
    YearGroup text, 
    Date text, 
    FormTutor text)''')

c.execute('''
CREATE TABLE Behaviour (
    BehaviourID integer PRIMARY KEY, 
    BehaviourType text, 
    BehaviourDescription text)''')

c.execute('''
CREATE table Incident (
    StudentID integer, 
    BehaviourID integer, 
    Date text,
    FOREIGN KEY(StudentID) REFERENCES Student(StudentID),
    FOREIGN KEY(BehaviourID) REFERENCES Behaviour(BehaviourID))''')

这将创建Student表,然后是Behavior表,最后是Incident表,其中外键引用Student和Behavior中的主键。事件表允许您定义学生和行为之间的多对多关系。