Inhaltsverzeichnis

TabellenkalkulationInformatik-Buch, DatenbankSQL-Befehle

PHPMyAdmin

Das, was hier steht ist noch sehr dürftig. Erst mal stehen da nur Dinge, die nötig sind, um die SchülerInnen als User einzurichten, die aber eigentlich keinen interessieren. Statt dessen empfehlen meine Jungs aus der 10 die Seite http://www.bplaced.net, auf der man sich kostenlos registrieren lassen kann, kostenlosen Webspace, kostenlose Datenbanken, FTP-Zugang und zur Bearbeitung der Datenbanken PHPMyAdmin bekommt. Werbefrei. Eigentlich sollte man meinen, dass es dabei irgendwelche Haken gibt, aber ich hab noch keinen gefunden. Dann also los…

Aufbau der Bücherei-Datenbank mit PHPMyAdmin

  1. Beim Anlegen der Tabellen darauf achten, dass als engine InnoDB gewählt wird, da sonst keine Fremdschlüssel genutzt werden können.
  2. Anlegen einer Tabelle Buecher mit:
    • ID, int(11), primary key, auto_increment
    • Titel, text
    • Autor, text
    • ISBN, text
    • Exemplar, tinyint(4)
    • Präsenz, bool=tinyint(1)
  3. Anlegen einer Tabelle Benutzer mit:
    • ID. int(11), primary key, auto_increment
    • Vorname, varchar(50)
    • Nachname, varchar(50)
    • Geburtsdatum, date
    • Telefon, varchar(15)
    • E-Mail, varchar(30)
  4. Anlegen einer Tabelle Ausleihe mit:
    • ID, int(11), primary key, auto_increment
    • ausgeliehhen, date
    • zurueckzubringen, date
    • Buch, int(11)
    • Benutzer, int(11)
  5. Attribute Buch und Benutzer zu Fremdschlüsseln machen.
    Ich habe in PHPMyAdmin keine Möglichkeit gefunden, die folgenden Befehle per Klick auszuführen. Also manuell…
ALTER TABLE Ausleihe ADD FOREIGN KEY ( Buch ) REFERENCES Buecher( ID )  
ALTER TABLE Ausleihe ADD FOREIGN KEY ( Benutzer ) REFERENCES Benutzer( ID )  

Anlegen der Benutzer-Tabelle kann man auch mit SQL machen:

 CREATE TABLE `claude`.`Benutzer` (
    `ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Surrogatschlüssel',
    `Vorname` VARCHAR( 50 ) NOT NULL ,
    `Name` VARCHAR( 50 ) NOT NULL ,
    `Geburtsdatum` DATE NOT NULL ,
    `Telefon` VARCHAR( 15 ) NOT NULL ,
    `E-Mail` VARCHAR( 30 ) NOT NULL
) ENGINE = InnoDB

Füllen der Tabelle:

INSERT INTO `claude`.`Benutzer` (
`ID` ,
`Vorname` ,
`Name` ,
`Geburtsdatum` ,
`Telefon` ,
`E-Mail`
)
VALUES (
NULL , 'Hugo', 'Schmidt', '1960-09-22', '0271 / 08 15', 'Hugo.Schmidt@web.de'
), (
NULL , 'Gerda', 'Müller', '1967-09-14', '', '02745 / 012398'
);

Die einzelnen SQL-Befehle

 CREATE TABLE `claude`.`Buecher` (
`ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Der Primärschlüssel',
`Titel` VARCHAR( 30 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL ,
`Autor` VARCHAR( 30 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL ,
`ISBN` VARCHAR( 17 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL ,
`Exemplar` TINYINT NOT NULL ,
`Praesenz` BOOL NOT NULL
) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_bin 
 CREATE TABLE `claude`.`Benutzer` (
`ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Primärschlüssel',
`Vorname` VARCHAR( 30 ) NOT NULL ,
`Name` VARCHAR( 30 ) NOT NULL ,
`Telefon` VARCHAR( 15 ) NOT NULL ,
`E-Mail` VARCHAR( 30 ) NOT NULL ,
`Geburt` DATE NOT NULL
) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_bin 
 CREATE TABLE `claude`.`Ausleihe` (
`ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Primärschlüssel',
`ausgeliehen` DATE NOT NULL ,
`zurueckbringen` DATE NOT NULL ,
`BuchID` INT NOT NULL ,
`BenutzerID` INT NOT NULL
) ENGINE = InnoDB 
ALTER TABLE Ausleihe ADD FOREIGN KEY ( BuchID ) REFERENCES Buecher( ID )  
ALTER TABLE Ausleihe ADD FOREIGN KEY ( BenutzerID ) REFERENCES Benutzer( ID )

Einrichten der SchülerInnen