Hallo Ihr
ich will in meine datenbankdefinition ein paar constraints aufnehmen, von denen ich irgendwie nicht weiß, wie ich das syntaktisch in
sql ausdrücken muss. weiß da jemand weiter? das problem ist folgendes:
-ein record besteht aus mehreren feldern
-sobald feld x <> null, dürfen nur noch felder y und z belegt sein. alle anderen felder müssen null sein.
..aus einem früheren thread (
http://www.delphipraxis.net/internal...040ef61bf13625) weiß ich schon mal die hälfte, nämlich:
IF (NEW.x IS NOT NULL) THEN
begin
NEW.a = NULL;
NEW.b = NULL;
...
usw.
end
da ich aber eine ganze menge felder habe, und sich da leicht der fehlerteufel einschleicht, wollte ich wissen, ob das nicht irgendwie eleganter geht, nach dem motto:
IF (NEW.x IS NOT NULL) THEN
begin
NEW.y = NEW.Y;
NEW.z = NEW.z;
NEW.alleAnderenFelder = null
end
oder (das wäre mir noch lieber):
IF (NEW.x IS NOT NULL) THEN
begin
NEW.y = NEW.Y;
NEW.z = NEW.z;
if NEW.irgendeinAnderesFeld <> null then
ungültigerDatensatzException
end
Ich weiß, eigentlich solltem man sich für sowas ein Buch nehmen und sich belesen, da ich aber nur diese eine Tabellendefinition hinkriegen muss, lohnt es sich einfach mal nicht für mich, mir extra ein Buch speziell zu
SQL zu kaufen und die ganze Literatur, die ich bisher im Netz oder als Beiwerk zu meinem Buch über Datenbankprogrammierung gefunden habe, enthält nur so Zeugs wie 'select'-statements...mich würd also auch mal interessieren, ob ihr im netz irgend ne quelle kennt, die beschreibt, wie man so prozeduren in
sql syntaktisch verfasst.
grüße und danke,
martin
Um Rekursion zu verstehen, muss man zunächst Rekursion verstehen.