Tabellen anlegen
	
        Tabellen legt man mit 
create table Tabellenname( Spalte1 Typ, Spalte2 Typ, ... , Constraints ); an.
        Als Typ kann verwendet werden:
        
            - int für ganze Zahlen
 
            - float für Kommazahlen
 
            - varchar(anzahl) für Text mit maximal Anzahl vielen Buchstaben. Die maximale Anzahl ist meist auf 216
                beschränkt (also 65536)
            
 
            - Date für ein Datum
 
            - DateTime für eine Kombination aus Datum und Uhrzeit
 
            - Time für eine Uhrzeit mit Stunden, Minuten und Sekunden
 
            - weitere wie Blob, Clob, Bit, Bool, Decimal, Binary, ... die wir nicht brauchen
 
        
        Bsp.: Eine Tabelle mit 3 Spalten: id als ganze Zahl und vorname, nachname als Text mit maximal 255 Buchstaben.
        
            create table Person( id int, vorname varchar(255), name varchar(255) );
        
     
	Primärschlüssel
	
		Um Spalten als Primär- bzw. Fremdschlüssel anzugeben verwendet man sogenannte Constraints (Festlegungen/Vereinbarungen).
        
Mit 
primary key(spalten) gibt man den Primärschlüssel an. Diese Spalten müssen dann eindeutige (unterschiedliche)
        Daten beinhalten.
        
Bsp. 1: Die Spalte 
id wird als Primärschlüssel festgelegt.
        
            create table Person( id int, vorname varchar(255), name varchar(255), 
  primary key(id)
 );
        
        Bsp. 2: Die beiden Spalte 
pid und 
tid bilden zusammen den Primärschlüssel.
        
            create table Person( pid int, tid int, primary key(pid, tid) );
        
        
	 
    Fremdschlüssel
	
	Fremdschlüssel-Constraints haben die Form: 
foreign key(Spalten) references AndereTabelle(Spalten)
    Hinter 
foreign key werden die Spalten in der aktuellen Tabelle aufgelistet. 
    Hinter 
references wird die Tabelle angegeben auf die verwiesen wird und in Klammern die Spalten dieser Tabelle.
    Die Anzahl der Spalten im Fremdschlüssel und der referenzierten Tabelle müssen übereinstimmen.
	
Bsp. 1: Bei einer 1:n-Beziehung zwischen Klasse und Schüler sieht die Tabellenerzeugung so aus:
	
	
		create table Klasse( id int, name varchar(255),
		  primary key(id)
		);
		create table Schüler( id int, vorname varchar(255), ..., kid int, 
		  primary key(id),
		  foreign key(kid) references Klasse(id)
		
)
	
	
	
	
    Bsp. 2: Die beiden Spalte 
pid und 
tid bilden zusammen den Primärschlüssel.
        
            create table Person( pid int, tid int, 
				  primary key(pid, tid),
				  foreign key(pid) references Person(id),
				  foreign key(tid) references Telefon(id) 
				);
				
            
            Diese Tabelle ist eine typische Zwischentabelle wie sie bei einer n:m-Relation verwendet wird.
            Der Primärschlüssel besteht aus den zwei Spalten, wobei jede Spalte als Fremdschlüssel auf eine andere Tabelle verweißt.
            Hier verweißt die Spalte pid auf die Spalte id der Tabelle Person und 
            die Spalte tid auf die Spalte id der Tabelle Telefon.
        
        
     
	Weitere Constraints
	
		Manche Constraints kann man direkt bei der Spaltendefinition angeben.
		Ein häufig verwendetes Constraint ist 
not null, welches 
		festlegt, dass die Spalte einen Wert haben muss, also nicht null sein darf.
		
Bsp.: Der Name und Vorname dürfen hier nicht leer gelassen werden.
		
			create table Person( id int, 
				  name varchar(255) not null, 
				  vorname  varchar(255) not null, 
				  geb date
 );
			
		
	 
	
		Das Constraint 
unique legt fest, dass jeder Wert in dieser Spalte
		nur einmal vorkommen darf. 
		Dies gilt über alle Datensätze der Tabelle hinweg.
		Primärschlüssel sind automatisch 
not null und 
unique.
		
Bsp.: Bücher haben eine unterschiedliche ISBN. Daher ist sie nicht null und eindeutig.
		
			create table Buch( id int, 
				  isbn varchar(13) not null unique, 
				  titel  varchar(255) not null, 
				
				  primary key(id) 
);
			
		
	 
	
		Mit 
default=Wert kann ein Standartwert für die Spalte 
		festgelegt werden. Wird ein Datensatz eingefügt ohne einen Wert
		für diese Spalte anzugeben, so erhält sie diesen Default-Wert.
		
Bsp.: Wenn kein Land angegeben wird ist es Deutschland.
		
			create table Person( id int, 
				  name varchar(255) not null, 
				  land varchar(255) default='Deutschland', ...,  
				
				  primary key(id) 
);