Hallo Für was braucht man bei SQL einen Constraint zB
Hi, ich glaub das ist fast das falsche Unterforum ;-) Constraints gehören dazu, dass in eine Tabelle einzufügende Daten geprüft werden, zB. ob ein Feld NULL sein darf, oder nicht. zB: http://www.datenbank-sql.de/oracle-constraints.htm
Etwas allgemeiner ausgedrückt: Constraints werden dazu benutzt, um die Integrität einer Datenbank zu gewährleisten. Das Beispiel von Tiny 80 ist ein Constraint auf Feldebene. Eine andere Form von Constraints verhindert z.B, daß ein Datensatz gelöscht wird, wenn andere Datensätze diesen noch Referenzieren. Es gibt noch weitere Constraints wie z.B. Unique-Key-Constraints, ... Gruß Markus
Hi ist klar aber ich verstehe den Unterschied hier nicht CREATE TABLE PERSON ( PNR NUMBER(4) NOT NULL, PRIMARY KEY (PNR), ); CREATE TABLE PERSON ( PNR NUMBER(4) NOT NULL, constraint pnr_id primary key (PNR), ); Danke
Hi, siehe z.B. hier: http://www.postgresql.org/docs/8.3/static/sql-createtable.html
1 | CONSTRAINT constraint_name |
2 | |
3 | An optional name for a column or table constraint. ... |
Oder kurz: Im zweiten Beispiel sind die Schlüsselwörter klein geschrieben und der Constraint bekommt zusätzlich explizit einen Namen. Im ersten Fall wird der Name für den Constraint implizit durch das DBMS vergeben (oder er hat halt gar keinen Namen, je nach DBMS). Funktionell sind beide Beispiele identisch. Wozu das Ganze? Nun bei einer Constraint-Verletzung taucht der Name normalerweise in der Fehlermeldung mit auf. Dadurch läßt sich das Problem meist leichter lokalisieren. CU FBI
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.