@@ -209,25 +209,29 @@ checkConstraints context = case failures of
209209 deps = inclusionDependencies context
210210 eval expr = runState (evalRelationalExpr expr) context
211211 checkIncDep (InclusionDependency depName subsetExpr supersetExpr) = case evaldSub of
212− Left err -> Just err
213− Right relSub -> case evaldSub of
214− Left err -> Just err
215− Right relSuper -> case union relSub relSuper of
212+ (Left err, _) -> Just err
213+ (Right relSub, _) -> case evaldSuper of
214+ (Left err, _) -> Just err
215+ (Right relSuper, _) -> case union relSub relSuper of
216216 Left err -> Just err
217− Right resultRel -> case resultRel of
217+ Right resultRel -> case resultRel == relSuper of
218218 False -> Just $ InclusionDependencyCheckError depName
219219 True -> Nothing
220220 where
221221 evaldSub = eval subsetExpr
222222 evaldSuper = eval supersetExpr
223223
224+{-
224225checkConstraint :: InclusionDependency -> DatabaseState (Maybe RelationalError)
225226checkConstraint (InclusionDependency name subDep superDep) = do
226− evalSub <- evalRelExpr subDep
227− evalSuper <- evalRelExpr superDep
227+ evalSub <- evalRelationalExpr subDep
228+ evalSuper <- evalRelationalExpr superDep
229+ case evalSub of
230+ Left err -> Just err
231+ Right relSub
228232 result <- liftM2 union evalSub evalSuper
229−
230−
233+ return $ Nothing
234+-}
231235
232236
233237