|
|
Zeile 50: |
Zeile 50: |
| </div> | | </div> |
| </div> | | </div> |
| == Relationale Datenbanken ==
| |
|
| |
| Bei der Entwicklung von Datenbanken muss für jede Spalte einer Tabelle ein Datentyp deklariert werden. Spalten werden auch Attribute genannt. Die Namen der Datentypen können je Datenbankhersteller variieren.
| |
|
| |
| Die Datentypen einer Spalte können direkt in der Administrationsoberfläche eines DBMS angelegt werden, oder durch ein in DLL erstelltes Skript.
| |
|
| |
| === Beispiel generiertes DDL SQL-Skript zur Erzeugung eines Schemas ===
| |
| <syntaxhighlight lang="sql" line>
| |
| CREATE SCHEMA `friseursalon`;
| |
| CREATE TABLE `friseursalon`.`salon` (`idsalon` INT NOT NULL AUTO_INCREMENT, `name` VARCHAR(45) NOT NULL, PRIMARY KEY (`idsalon`));
| |
| CREATE TABLE `friseursalon`.`mitarbeiter` (`idmitarbeiter` INT NOT NULL AUTO_INCREMENT, `nachname` VARCHAR(45) NOT NULL, `vorname` VARCHAR(45) NOT NULL, `idsalon` INT NOT NULL, PRIMARY KEY (`idmitarbeiter`), INDEX `fksalon` (`idsalon` ASC), CONSTRAINT `fksalon` FOREIGN KEY (`idsalon`) REFERENCES `friseursalon`.`salon` (`idsalon`) ON DELETE NO ACTION ON UPDATE NO ACTION);
| |
| CREATE TABLE `friseursalon`.`kunde` (`idkunde` INT NOT NULL AUTO_INCREMENT, `nachname` VARCHAR(45) NOT NULL, `vorname` VARCHAR(45) NOT NULL, PRIMARY KEY (`idkunde`));
| |
| CREATE TABLE `friseursalon`.`termin` (`idtermin` INT NOT NULL AUTO_INCREMENT, `datum` VARCHAR(45) NULL, `rechnungsbetrag` DOUBLE NULL, `idmitarbeiter` INT NOT NULL, `idkunde` INT NOT NULL, PRIMARY KEY (`idtermin`), INDEX `fkmitarbeiter` (`idmitarbeiter` ASC), INDEX `fkkunde` (`idkunde` ASC), CONSTRAINT `fkmitarbeiter` FOREIGN KEY (`idmitarbeiter`) REFERENCES `friseursalon`.`mitarbeiter` (`idmitarbeiter`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fkkunde` FOREIGN KEY (`idkunde`) REFERENCES `friseursalon`.`kunde` (`idkunde`) ON DELETE NO ACTION ON UPDATE NO ACTION);
| |
| </syntaxhighlight>
| |
| [[Kategorie:Programmierung]]
| |
| [[Kategorie:Datenbanken]]
| |