ÜBERPRÜFEn ich eine Tabelle in meiner Datenbank hinzufügen:Syntax für eingefügten Wert gegen einen anderen Tisch des
***Enrollments***
CourseID
Student ID
EnrollmentDateTime
Ich habe bereits eine Tabelle:
***Courses***
CourseID
StartDate
Wenn jemand Daten in die Einschreibungen Tabelle eingefügt wird, Ich möchte prüfen, ob das Anmeldedatum kleiner ist als/vor dem Startdatum; Ich weiß, was zu tun ist, aber mir fehlt die Syntax dafür. Bisher habe ich folgendes, aber ich weiß nicht, wie ich vorgehen soll.
Create Table Enrollments(
StudentID int NOT NULL Foreign Key REFERENCES dbo.Students(StudentID),
CourseID int NOT NULL Foreign Key REFERENCES dbo.Courses(CourseID),
EnrollmentDateTime Datetime NOT NULL CHECK (dbo.fCheckDate(EnrollmentDateTime, CourseID) = 1))
...
create function dbo.fCheckDate (@StartDate Datetime, @CourseID int)
Returns bit
AS
Begin
Return(SELECT E.StartDate
FROM dbo.Enrollments E
WHERE @CourseID = E.CourseID
End
go