<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de-x-formal">
	<id>https://glossar.hs-augsburg.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Melissa</id>
	<title>GlossarWiki - Benutzerbeiträge [de-formal]</title>
	<link rel="self" type="application/atom+xml" href="https://glossar.hs-augsburg.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Melissa"/>
	<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/Spezial:Beitr%C3%A4ge/Melissa"/>
	<updated>2026-07-17T22:57:46Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12307</id>
		<title>SQL Integritätsregeln</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12307"/>
		<updated>2008-07-16T23:51:09Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Definition=&lt;br /&gt;
Die Inhalte einer Datenbank sollten idealerweise fehlerfrei und in sich schlüssig sein.&lt;br /&gt;
Beim Anlegen von Tabellen werden auch gleich deren Integritätsregeln festgelegt. Somit werden fehlerhafte Datensätze gar nicht erst angenommen.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Integritätsregeln:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Primärschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Jeder Datensatz wird eindeutig ansprechbar.&lt;br /&gt;
#&#039;&#039;&#039;Fremdschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Tabellen werden eindeutig verknüpft.&lt;br /&gt;
#&#039;&#039;&#039;UNIQUE	&#039;&#039;&#039;&amp;lt;br/&amp;gt;Es wird kein Wert doppelt abgespeichert.&lt;br /&gt;
#&#039;&#039;&#039;CHECK&#039;&#039;&#039; &amp;lt;br/&amp;gt;Fehleingaben werden verhindert durch Überprüfungsregeln.&lt;br /&gt;
#&#039;&#039;&#039;DEFAULT&#039;&#039;&#039; &amp;lt;br/&amp;gt;Standardwerte können gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==1. Primärschlüssel (PRIMARY KEY)==&lt;br /&gt;
Mit einem Primärschlüssel werden alle Datensätze eindeutig identifizierbar. Beim Erstellen von Datensätzen muss das Feld dieser Spalte gefüllt werden. Ist das nicht der Fall oder ist dieser Wert schon vorhanden wird der Datensatz nicht angenommen.&lt;br /&gt;
Die Spalte die als Primärschlüssel bestimmt wird, sollte dafür auch geeignet sein, wie beispielsweise die Matrikelnummer jedes Studenten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  VARCHAR,   &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird der Primärschlüssel durch PRIMARY KEY  gesetzt und in den Klammern der betreffende Spaltenname. Mit CONSTRAINT bekommt der Primärschlüssel einen Namen, durch den er später ansprechbar wird. Man könnte PRIMARY KEY auch direkt hinter den Spaltennamen setzen, wenn die Tabelle nur einen Primärschlüssel bekommt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. Fremdschlüssel (FOREIGN KEY)==&lt;br /&gt;
Fremdschlüssel dienen zur Verknüpfung von Tabellen und beziehen sich auf den Primärschlüssel einer anderen Tabelle. Dadurch werden die zwei Tabellen von einander abhängig.&lt;br /&gt;
Wird eine Spalte als Fremdschlüssel gesetzt, können nur noch Werte eingesetzt werden, die in der verknüpften Tabelle, Spalte Primärschlüssel, eingebbar sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE studiengang      &lt;br /&gt;
      (&lt;br /&gt;
      l_id	   INTEGER    NOT NULL,      &lt;br /&gt;
      l_name	   VARCHAR    NOT NULL,    &lt;br /&gt;
    &lt;br /&gt;
      CONSTRAINT studiengang_pk      &lt;br /&gt;
      PRIMARY KEY (l_id)    &lt;br /&gt;
      );&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)  &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man legt den Fremdschlüssel mit FOREIGN KEY direkt an die Spaltendefinition an oder danach. Auch hier könnte man diesen mit CONSTRAINT benennen.&lt;br /&gt;
Mit REFERENCES wird die Tabelle, die „Vatertabelle“, angegeben, auf die sich der Fremdschlüssel bezieht und in den Klammern den Primärschlüssel. Die Tabelle, auf die verwiesen wird, muss jedoch schon vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wird ein Datensatz aus der Vatertabelle gelöscht, müssen auch die Datensätze aus der abhängigen Tabelle behandelt werden. Dies dient zur Bewahrung der Datenintegrität.&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es vier Fälle:&lt;br /&gt;
#NO ACTION &amp;lt;br/&amp;gt;Wird aus der Vatertabelle etwas gelöscht, passiert in der abhängigen Tabelle nichts.&lt;br /&gt;
#CASCADE &amp;lt;br/&amp;gt;Die Datensätze der abhängigen Tabelle werden mitgelöscht oder aktualisiert.&lt;br /&gt;
#SET DEFAULT &amp;lt;br/&amp;gt;Der Schlüsselwert der abhängigen Tabelle wird auf DEFAULT gesetzt.&lt;br /&gt;
#SET NULL &amp;lt;br/&amp;gt;Wenn etwas in der Vatertabelle geändert oder gelöscht wird, wird der abhängige Wert auf NULL gesetzt.&lt;br /&gt;
&lt;br /&gt;
Das könnte dann folgendermaßen aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)&lt;br /&gt;
 &lt;br /&gt;
      [ON DELETE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      [ON UPDATE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. UNIQUE==&lt;br /&gt;
Eine weitere Möglichkeit um zu verhindern, dass ein Wert in einer Spalte öfter vorkommt, außer dem Primärschlüssel, lautet UNIQUE. Das Datenbanksystem verhindert damit automatisch, dass ein Wert doppelt eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten UNIQUE zu setzten. &lt;br /&gt;
Einmal direkt hinter der Spaltendefinition oder danach. Dabei können auch gleichzeitig mehrere Spalten angegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      UNIQUE (s_name, s_studiengang [...])&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. CHECK==&lt;br /&gt;
Mit CHECK lassen sich Regeln selbst definieren. Bestimmte Spalten werden dann beim Eingeben von Datensätzen überprüft und diese daraufhin zugelassen oder nicht.&lt;br /&gt;
Das heißt man kann testen, ob eine Eingabe zu bestimmten Werten gehört, oder in einem bestimmten Verhältnis zu einem anderen Wert steht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr),&lt;br /&gt;
		&lt;br /&gt;
      CHECK (b_bestellmenge &amp;lt;= b_anzahl)	&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier kann CHECK direkt an die Spaltendefinition oder an das Ende der Tabellendefinition. Auch kann hier wieder mit CONSTRAINT gearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==5. DEFAULT==&lt;br /&gt;
Man kann Standardwerte vorgeben, die dann, wenn nicht anderes angegeben wird, eingesetzt werden. Dadurch werden keine NULL-Werte gespeichert.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER DEFAULT &#039;0&#039;,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird DEFAULT einfach an die Spaltendefinition hinten dran gehängt und der Wert angegeben. Somit wird automatisch wenn nichts anderes angeben wird &#039;0&#039; eingesetzt.&lt;br /&gt;
Man könnte auch die CHECK Klausel mit DEFAULT erweitern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=12305</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=12305"/>
		<updated>2008-07-16T23:50:41Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände, die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann sie jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN oder im Kontextmenü des Objektes, das mit der rechten Maustaste aufgerufen wird, verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol.jpg]]&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol erweitert.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Hauser, T. et. al. (2008): ActionScript 3]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12304</id>
		<title>SQL Unterabfragen</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12304"/>
		<updated>2008-07-16T23:50:24Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Definition=&lt;br /&gt;
Unterabfragen, die auch Sub-Selects oder Sub-Querys genannt werden, können verwendet werden, um andere SQL-Anweisungen mit einzubinden.&lt;br /&gt;
Dadurch können Ergebnisse einer Abfrage sofort in einer neuen Abfrage verwendet werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	kundennr, bestelldatum, rechnungsbetrag&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag =&lt;br /&gt;
			(&lt;br /&gt;
			SELECT max(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird in der WHERE-Bedingung eine SELECT-Abfrage formuliert, die sich komplett in runden Klammern befindet. Das Ergebnis dieser Abfrage gibt genau einen Wert zurück, der mit dem Rechnungsbetrag verglichen wird. Der Rückgabewert muss folglich zum Selektionskriterium passen.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich gibt es zwei Varianten, die Unterabfragen liefern können. Entweder liefern sie einen Wert, also eine Zeile zurück oder mehrere Zeilen.&lt;br /&gt;
Dabei können die Abfragen eigenständig ausgeführt werden, ohne Beeinflussung durch die Hauptabfrage oder umgekehrt.&lt;br /&gt;
Sie lassen sich auch in DELETE-, UPDATE- und INSERT-Anweisungen verwenden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit einem Rückgabewert=&lt;br /&gt;
Hier gelten folgende Bedingungen:&lt;br /&gt;
Die Unterabfrage gibt genau einen Wert zurück.&lt;br /&gt;
Die Unterabfrage gibt genau eine Spalte zurück.&lt;br /&gt;
&lt;br /&gt;
Bei dieser Art von Abfrage wird hauptsächlich mit Vergleichsoperatoren wie =, &amp;gt;, &amp;gt;=, &amp;lt; oder &amp;lt;= gearbeitet.&lt;br /&gt;
Man kann diese Unterabfragen auch gut für Aggregatfunktionen wie MAX oder AVG verwenden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	bestellnr&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag &amp;gt;&lt;br /&gt;
			(&lt;br /&gt;
			SELECT AVG(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird mit SELECT AVG(rechnungsbetrag) der durchschnittliche Rechnungsbetrag ermittelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit mehreren Rückgabewerten=&lt;br /&gt;
Nun ist der Einsatz von Mengenoperatoren (vo ALL, vo ANY, IN, EXISTS) notwendig, da jetzt mit mehreren Werten verglichen wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	name, gehalt, abteilung&lt;br /&gt;
	FROM   	mitarbeiter&lt;br /&gt;
	WHERE 	gehalt &amp;lt; ALL&lt;br /&gt;
			(&lt;br /&gt;
			 SELECT gehalt 	FROM	 mitarbeiter	WHERE abteilung = 5&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Unterabfrage gibt nun alle Gehälter aus der Abteilung 5 aus. ALL vergleicht, ob die Bedingung auf alle Zeilen der Unterabfrage zutrifft. Ob es also ein Gehalt gibt, das kleiner ist als alle Gehälter aus der Abteilung 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Regeln für Unterabfragen=&lt;br /&gt;
#die Unterabfrage wird in runden Klammer gesetzt&lt;br /&gt;
#wird als rechtsseitiger Ausdruck, Vergleich oder EXISTS-Bedingung eingesetzt&lt;br /&gt;
#ein einzelner Datensatz als Rückgabewert kann mit Vergleichsoperatoren verwendet werden&lt;br /&gt;
#bei mehreren Datensätzen verwendet man Mengenoperatoren&lt;br /&gt;
#ORDER BY und UNION ist in einer Unterabfrage unzulässig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12302</id>
		<title>SQL Unterabfragen</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12302"/>
		<updated>2008-07-16T23:26:40Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
&lt;br /&gt;
=Definition=&lt;br /&gt;
Unterabfragen, die auch Sub-Selects oder Sub-Querys genannt werden, können verwendet werden, um andere SQL-Anweisungen mit einzubinden.&lt;br /&gt;
Dadurch können Ergebnisse einer Abfrage sofort in einer neuen Abfrage verwendet werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	kundennr, bestelldatum, rechnungsbetrag&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag =&lt;br /&gt;
			(&lt;br /&gt;
			SELECT max(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird in der WHERE-Bedingung eine SELECT-Abfrage formuliert, die sich komplett in runden Klammern befindet. Das Ergebnis dieser Abfrage gibt genau einen Wert zurück, der mit dem Rechnungsbetrag verglichen wird. Der Rückgabewert muss folglich zum Selektionskriterium passen.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich gibt es zwei Varianten, die Unterabfragen liefern können. Entweder liefern sie einen Wert, also eine Zeile zurück oder mehrere Zeilen.&lt;br /&gt;
Dabei können die Abfragen eigenständig ausgeführt werden, ohne Beeinflussung durch die Hauptabfrage oder umgekehrt.&lt;br /&gt;
Sie lassen sich auch in DELETE-, UPDATE- und INSERT-Anweisungen verwenden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit einem Rückgabewert=&lt;br /&gt;
Hier gelten folgende Bedingungen:&lt;br /&gt;
Die Unterabfrage gibt genau einen Wert zurück.&lt;br /&gt;
Die Unterabfrage gibt genau eine Spalte zurück.&lt;br /&gt;
&lt;br /&gt;
Bei dieser Art von Abfrage wird hauptsächlich mit Vergleichsoperatoren wie =, &amp;gt;, &amp;gt;=, &amp;lt; oder &amp;lt;= gearbeitet.&lt;br /&gt;
Man kann diese Unterabfragen auch gut für Aggregatfunktionen wie MAX oder AVG verwenden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	bestellnr&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag &amp;gt;&lt;br /&gt;
			(&lt;br /&gt;
			SELECT AVG(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird mit SELECT AVG(rechnungsbetrag) der durchschnittliche Rechnungsbetrag ermittelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit mehreren Rückgabewerten=&lt;br /&gt;
Nun ist der Einsatz von Mengenoperatoren (vo ALL, vo ANY, IN, EXISTS) notwendig, da jetzt mit mehreren Werten verglichen wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	name, gehalt, abteilung&lt;br /&gt;
	FROM   	mitarbeiter&lt;br /&gt;
	WHERE 	gehalt &amp;lt; ALL&lt;br /&gt;
			(&lt;br /&gt;
			 SELECT gehalt 	FROM	 mitarbeiter	WHERE abteilung = 5&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Unterabfrage gibt nun alle Gehälter aus der Abteilung 5 aus. ALL vergleicht, ob die Bedingung auf alle Zeilen der Unterabfrage zutrifft. Ob es also ein Gehalt gibt, das kleiner ist als alle Gehälter aus der Abteilung 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Regeln für Unterabfragen=&lt;br /&gt;
#die Unterabfrage wird in runden Klammer gesetzt&lt;br /&gt;
#wird als rechtsseitiger Ausdruck, Vergleich oder EXISTS-Bedingung eingesetzt&lt;br /&gt;
#ein einzelner Datensatz als Rückgabewert kann mit Vergleichsoperatoren verwendet werden&lt;br /&gt;
#bei mehreren Datensätzen verwendet man Mengenoperatoren&lt;br /&gt;
#ORDER BY und UNION ist in einer Unterabfrage unzulässig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=12285</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=12285"/>
		<updated>2008-07-16T21:00:16Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände, die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann sie jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN oder im Kontextmenü des Objektes, das mit der rechten Maustaste aufgerufen wird, verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol.jpg]]&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol erweitert.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Hauser, T. et. al. (2008): ActionScript 3]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12283</id>
		<title>SQL Unterabfragen</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12283"/>
		<updated>2008-07-16T20:51:58Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
&lt;br /&gt;
=Definition=&lt;br /&gt;
Unterabfragen, die auch Sub-Selects oder Sub-Querys genannt werden, können verwendet werden, um andere SQL-Anweisungen mit einzubinden.&lt;br /&gt;
Dadurch können Ergebnisse einer Abfrage sofort in einer neuen Abfrage verwendet werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	kundennr, bestelldatum, rechnungsbetrag&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag =&lt;br /&gt;
			(&lt;br /&gt;
			SELECT max(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird in der WHERE-Bedingung eine SELECT-Abfrage formuliert, die sich komplett in runden Klammern befindet. Das Ergebnis dieser Abfrage gibt genau einen Wert zurück, der mit dem Rechnungsbetrag verglichen wird. Der Rückgabewert muss folglich zum Selektionskriterium passen.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich gibt es zwei Varianten, die Unterabfragen liefern können. Entweder liefern sie einen Wert, also eine Zeile zurück oder mehrere Zeilen.&lt;br /&gt;
Dabei können die Abfragen eigenständig ausgeführt werden, ohne Beeinflussung durch die Hauptabfrage oder umgekehrt.&lt;br /&gt;
Sie lassen sich auch in DELETE-, UPDATE- und INSERT-Anweisungen verwenden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit einem Rückgabewert=&lt;br /&gt;
Hier gelten folgende Bedingungen:&lt;br /&gt;
Die Unterabfrage gibt genau einen Wert zurück.&lt;br /&gt;
Die Unterabfrage gibt genau eine Spalte zurück.&lt;br /&gt;
&lt;br /&gt;
Bei dieser Art von Abfrage wird hauptsächlich mit Vergleichsoperatoren wie =, &amp;gt;, &amp;gt;=, &amp;lt; oder &amp;lt;= gearbeitet.&lt;br /&gt;
Man kann diese Unterabfragen auch gut für Aggregatfunktionen wie MAX oder AVG verwenden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	bestellnr&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag &amp;gt;&lt;br /&gt;
			(&lt;br /&gt;
			SELECT AVG(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird mit SELECT AVG(rechnungsbetrag) der durchschnittliche Rechnungsbetrag ermittelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit mehreren Rückgabewerten=&lt;br /&gt;
Nun ist der Einsatz von Mengenoperatoren (vo ALL, vo ANY, IN, EXISTS) notwendig, da jetzt mit mehreren Werten verglichen wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	name, gehalt, abteilung&lt;br /&gt;
	FROM   	mitarbeiter&lt;br /&gt;
	WHERE 	gehalt &amp;lt; ALL&lt;br /&gt;
			(&lt;br /&gt;
			 SELECT gehalt 	FROM	 mitarbeiter	WHERE abteilung = 5&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Unterabfrage gibt nun alle Gehälter aus der Abteilung 5 aus. ALL vergleicht, ob die Bedingung auf alle Zeilen der Unterabfrage zutrifft. Ob es also ein Gehalt gibt, das kleiner ist als alle Gehälter aus der Abteilung 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Regeln für Unterabfragen=&lt;br /&gt;
#die Unterabfrage wird in runden Klammer gesetzt&lt;br /&gt;
#wird als rechtsseitiger Ausdruck, Vergleich oder EXISTS-Bedingung eingesetzt&lt;br /&gt;
#ein einzelner Datensatz als Rückgabewert kann mit Vergleichsoperatoren verwendet werden&lt;br /&gt;
#bei mehreren Datensätzen verwendet man Mengenoperatoren&lt;br /&gt;
#ORDER BY ist in einer Unterabfrage unzulässig&lt;br /&gt;
#in der Unterabfrage ist UNION nicht zulässig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12282</id>
		<title>SQL Integritätsregeln</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12282"/>
		<updated>2008-07-16T20:47:58Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Die Inhalte einer Datenbank sollten idealerweise fehlerfrei und in sich schlüssig sein.&lt;br /&gt;
Beim Anlegen von Tabellen werden auch gleich deren Integritätsregeln festgelegt. Somit werden fehlerhafte Datensätze gar nicht erst angenommen.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Integritätsregeln:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Primärschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Jeder Datensatz wird eindeutig ansprechbar.&lt;br /&gt;
#&#039;&#039;&#039;Fremdschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Tabellen werden eindeutig verknüpft.&lt;br /&gt;
#&#039;&#039;&#039;UNIQUE	&#039;&#039;&#039;&amp;lt;br/&amp;gt;Es wird kein Wert doppelt abgespeichert.&lt;br /&gt;
#&#039;&#039;&#039;CHECK&#039;&#039;&#039; &amp;lt;br/&amp;gt;Fehleingaben werden verhindert durch Überprüfungsregeln.&lt;br /&gt;
#&#039;&#039;&#039;DEFAULT&#039;&#039;&#039; &amp;lt;br/&amp;gt;Standardwerte können gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==1. Primärschlüssel (PRIMARY KEY)==&lt;br /&gt;
Mit einem Primärschlüssel werden alle Datensätze eindeutig identifizierbar. Beim Erstellen von Datensätzen muss das Feld dieser Spalte gefüllt werden. Ist das nicht der Fall oder ist dieser Wert schon vorhanden wird der Datensatz nicht angenommen.&lt;br /&gt;
Die Spalte die als Primärschlüssel bestimmt wird, sollte dafür auch geeignet sein, wie beispielsweise die Matrikelnummer jedes Studenten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  VARCHAR,   &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird der Primärschlüssel durch PRIMARY KEY  gesetzt und in den Klammern der betreffende Spaltenname. Mit CONSTRAINT bekommt der Primärschlüssel einen Namen, durch den er später ansprechbar wird. Man könnte PRIMARY KEY auch direkt hinter den Spaltennamen setzen, wenn die Tabelle nur einen Primärschlüssel bekommt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. Fremdschlüssel (FOREIGN KEY)==&lt;br /&gt;
Fremdschlüssel dienen zur Verknüpfung von Tabellen und beziehen sich auf den Primärschlüssel einer anderen Tabelle. Dadurch werden die zwei Tabellen von einander abhängig.&lt;br /&gt;
Wird eine Spalte als Fremdschlüssel gesetzt, können nur noch Werte eingesetzt werden, die in der verknüpften Tabelle, Spalte Primärschlüssel, eingebbar sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE studiengang      &lt;br /&gt;
      (&lt;br /&gt;
      l_id	   INTEGER    NOT NULL,      &lt;br /&gt;
      l_name	   VARCHAR    NOT NULL,    &lt;br /&gt;
    &lt;br /&gt;
      CONSTRAINT studiengang_pk      &lt;br /&gt;
      PRIMARY KEY (l_id)    &lt;br /&gt;
      );&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)  &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man legt den Fremdschlüssel mit FOREIGN KEY direkt an die Spaltendefinition an oder danach. Auch hier könnte man diesen mit CONSTRAINT benennen.&lt;br /&gt;
Mit REFERENCES wird die Tabelle, die „Vatertabelle“, angegeben, auf die sich der Fremdschlüssel bezieht und in den Klammern den Primärschlüssel. Die Tabelle, auf die verwiesen wird, muss jedoch schon vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wird ein Datensatz aus der Vatertabelle gelöscht, müssen auch die Datensätze aus der abhängigen Tabelle behandelt werden. Dies dient zur Bewahrung der Datenintegrität.&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es vier Fälle:&lt;br /&gt;
#NO ACTION &amp;lt;br/&amp;gt;Wird aus der Vatertabelle etwas gelöscht, passiert in der abhängigen Tabelle nichts.&lt;br /&gt;
#CASCADE &amp;lt;br/&amp;gt;Die Datensätze der abhängigen Tabelle werden mitgelöscht oder aktualisiert.&lt;br /&gt;
#SET DEFAULT &amp;lt;br/&amp;gt;Der Schlüsselwert der abhängigen Tabelle wird auf DEFAULT gesetzt.&lt;br /&gt;
#SET NULL &amp;lt;br/&amp;gt;Wenn etwas in der Vatertabelle geändert oder gelöscht wird, wird der abhängige Wert auf NULL gesetzt.&lt;br /&gt;
&lt;br /&gt;
Das könnte dann folgendermaßen aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)&lt;br /&gt;
 &lt;br /&gt;
      [ON DELETE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      [ON UPDATE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. UNIQUE==&lt;br /&gt;
Eine weitere Möglichkeit um zu verhindern, dass ein Wert in einer Spalte öfter vorkommt, außer dem Primärschlüssel, lautet UNIQUE. Das Datenbanksystem verhindert damit automatisch, dass ein Wert doppelt eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten UNIQUE zu setzten. &lt;br /&gt;
Einmal direkt hinter der Spaltendefinition oder danach. Dabei können auch gleichzeitig mehrere Spalten angegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      UNIQUE (s_name, s_studiengang [...])&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. CHECK==&lt;br /&gt;
Mit CHECK lassen sich Regeln selbst definieren. Bestimmte Spalten werden dann beim Eingeben von Datensätzen überprüft und diese daraufhin zugelassen oder nicht.&lt;br /&gt;
Das heißt man kann testen, ob eine Eingabe zu bestimmten Werten gehört, oder in einem bestimmten Verhältnis zu einem anderen Wert steht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr),&lt;br /&gt;
		&lt;br /&gt;
      CHECK (b_bestellmenge &amp;lt;= b_anzahl)	&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier kann CHECK direkt an die Spaltendefinition oder an das Ende der Tabellendefinition. Auch kann hier wieder mit CONSTRAINT gearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==5. DEFAULT==&lt;br /&gt;
Man kann Standardwerte vorgeben, die dann, wenn nicht anderes angegeben wird, eingesetzt werden. Dadurch werden keine NULL-Werte gespeichert.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER DEFAULT &#039;0&#039;,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird DEFAULT einfach an die Spaltendefinition hinten dran gehängt und der Wert angegeben. Somit wird automatisch wenn nichts anderes angeben wird &#039;0&#039; eingesetzt.&lt;br /&gt;
Man könnte auch die CHECK Klausel mit DEFAULT erweitern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12260</id>
		<title>SQL Integritätsregeln</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12260"/>
		<updated>2008-07-16T15:49:13Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Die Inhalte einer Datenbank sollten idealerweise fehlerfrei und in sich schlüssig sein.&lt;br /&gt;
Beim Anlegen von Tabellen, werden auch gleich deren Integritätsregeln festgelegt. Somit werden fehlerhafte Datensätze gar nicht erst angenommen.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Integritätsregeln:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Primärschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Jeder Datensatz wird eindeutig ansprechbar.&lt;br /&gt;
#&#039;&#039;&#039;Fremdschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Tabellen werden eindeutig verknüpft.&lt;br /&gt;
#&#039;&#039;&#039;UNIQUE	&#039;&#039;&#039;&amp;lt;br/&amp;gt;Es wird kein Wert doppelt abgespeichert.&lt;br /&gt;
#&#039;&#039;&#039;CHECK&#039;&#039;&#039; &amp;lt;br/&amp;gt;Fehleingaben werden verhindert durch Überprüfungsregeln.&lt;br /&gt;
#&#039;&#039;&#039;DEFAULT&#039;&#039;&#039; &amp;lt;br/&amp;gt;Standardwerte können gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==1. Primärschlüssel (PRIMARY KEY)==&lt;br /&gt;
Mit einem Primärschlüssel werden alle Datensätze eindeutig identifizierbar. Beim Erstellen von Datensätzen muss das Feld dieser Spalte gefüllt werden. Ist das nicht der Fall, oder ist dieser Wert schon vorhanden, wird der Datensatz nicht angenommen.&lt;br /&gt;
Die Spalte die als Primärschlüssel bestimmt wird, sollte dafür auch geeignet sein wie beispielsweise die Matrikelnummer jedes Studenten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  VARCHAR,   &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird der Primärschlüssel durch PRIMARY KEY  gesetzt und in den Klammern der betreffende Spaltenname. Mit CONSTRAINT bekommt der Primärschlüssel einen Namen, durch den er später ansprechbar wird. Man könnte PRIMARY KEY auch direkt hinter den Spaltennamen setzen, wenn die Tabelle nur einen Primärschlüssel bekommt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. Fremdschlüssel (FOREIGN KEY)==&lt;br /&gt;
Fremdschlüssel dienen zur Verknüpfung von Tabellen und beziehen sich auf den Primärschlüssel einer anderen Tabelle. Dadurch werden die zwei Tabellen von einander abhängig.&lt;br /&gt;
Wird eine Spalte als Fremdschlüssel gesetzt, können nur noch Werte eingesetzt werden, die in der verknüpften Tabelle, Spalte Primärschlüssel, eingebbar sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE studiengang      &lt;br /&gt;
      (&lt;br /&gt;
      l_id	   INTEGER    NOT NULL,      &lt;br /&gt;
      l_name	   VARCHAR    NOT NULL,    &lt;br /&gt;
    &lt;br /&gt;
      CONSTRAINT studiengang_pk      &lt;br /&gt;
      PRIMARY KEY (l_id)    &lt;br /&gt;
      );&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)  &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man legt den Fremdschlüssel mit FOREIGN KEY direkt an die Spaltendefinition an oder danach. Auch hier könnte man diesen mit CONSTRAINT benennen.&lt;br /&gt;
Mit REFERENCES wird die Tabelle, die „Vatertabelle“, angegeben auf die sich der Fremdschlüssel bezieht und in den Klammern den Primärschlüssel. Die Tabelle auf die verwiesen wird muss jedoch schon vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wird ein Datensatz aus der Vatertabelle gelöscht, müssen auch die Datensätze aus der abhängigen Tabelle behandelt werden. Dies dient zur Bewahrung der Datenintegrität.&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es vier Fälle:&lt;br /&gt;
#NO ACTION &amp;lt;br/&amp;gt;Wird aus der Vatertabelle etwas gelöscht, passiert in der abhängigen Tabelle nichts.&lt;br /&gt;
#CASCADE &amp;lt;br/&amp;gt;Die Datensätze der abhängigen Tabelle werden mit gelöscht oder aktualisiert.&lt;br /&gt;
#SET DEFAULT &amp;lt;br/&amp;gt;Der Schlüsselwert der abhängigen Tabelle wird auf DEFAULT gesetzt.&lt;br /&gt;
#SET NULL &amp;lt;br/&amp;gt;Wenn etwas in der Vatertabelle geändert oder gelöscht wird, wird der abhängige Wert auf NULL gesetzt.&lt;br /&gt;
&lt;br /&gt;
Das könnte dann folgendermaßen aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)&lt;br /&gt;
 &lt;br /&gt;
      [ON DELETE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      [ON UPDATE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. UNIQUE==&lt;br /&gt;
Eine weitere Möglichkeit um zu verhindern, dass ein Wert in einer Spalte öfter vorkommt, außer dem Primärschlüssel, lautet UNIQUE. Das Datenbanksystem verhindert damit automatisch, dass ein Wert doppelt eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten UNIQUE zu setzten. &lt;br /&gt;
Einmal direkt hinter der Spaltendefinition oder danach. Dabei können auch gleichzeitig mehrere Spalten angegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      UNIQUE (s_name, s_studiengang [...])&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. CHECK==&lt;br /&gt;
Mit CHECK lassen sich Regeln selbst definieren. Bestimmte Spalten werden dann beim Eingeben von Datensätzen überprüft und diese daraufhin zugelassen oder nicht.&lt;br /&gt;
Das heißt man kann testen ob eine Eingabe zu bestimmten Werten gehört, oder in einem bestimmten Verhältnis zu einem anderen Wert steht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr),&lt;br /&gt;
		&lt;br /&gt;
      CHECK (b_bestellmenge &amp;lt;= b_anzahl)	&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier kann CHECK direkt an die Spaltendefinition oder an das Ende der Tabellendefinition. Auch kann hier wieder mit CONSTRAINT gearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==5. DEFAULT==&lt;br /&gt;
Man kann Standardwerte vorgeben, die dann wenn nicht anderes angegeben wird eingesetzt werden. Dadurch werden keine NULL-Werte gespeichert.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER DEFAULT &#039;0&#039;,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird DEFAULT einfach an die Spaltendefinition hinten dran gehängt und der Wert angegeben. Somit wird automatisch wenn nichts anderes angeben wird &#039;0&#039; eingesetzt.&lt;br /&gt;
Man könnte auch die CHECK Klausel mit DEFAULT erweitern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12259</id>
		<title>SQL Integritätsregeln</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12259"/>
		<updated>2008-07-16T15:47:46Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Die Inhalte einer Datenbank sollten idealerweise fehlerfrei und in sich schlüssig sein.&lt;br /&gt;
Beim Anlegen von Tabellen, werden auch gleich deren Integritätsregeln festgelegt. Somit werden fehlerhafte Datensätze gar nicht erst angenommen.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Integritätsregeln:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Primärschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Jeder Datensatz wird eindeutig ansprechbar.&lt;br /&gt;
#&#039;&#039;&#039;Fremdschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Tabellen werden eindeutig verknüpft.&lt;br /&gt;
#&#039;&#039;&#039;UNIQUE	&#039;&#039;&#039;&amp;lt;br/&amp;gt;Es wird kein Wert doppelt abgespeichert.&lt;br /&gt;
#&#039;&#039;&#039;CHECK&#039;&#039;&#039; &amp;lt;br/&amp;gt;Fehleingaben werden verhindert durch Überprüfungsregeln.&lt;br /&gt;
#&#039;&#039;&#039;DEFAULT&#039;&#039;&#039; &amp;lt;br/&amp;gt;Standardwerte können gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==1. Primärschlüssel (PRIMARY KEY)==&lt;br /&gt;
Mit einem Primärschlüssel werden alle Datensätze eindeutig identifizierbar. Beim Erstellen von Datensätzen muss das Feld dieser Spalte gefüllt werden. Ist das nicht der Fall, oder ist dieser Wert schon vorhanden, wird der Datensatz nicht angenommen.&lt;br /&gt;
Die Spalte die als Primärschlüssel bestimmt wird, sollte dafür auch geeignet sein wie beispielsweise die Matrikelnummer jedes Studenten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  VARCHAR,   &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr)&lt;br /&gt;
	);&lt;br /&gt;
&amp;lt;/pre&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird der Primärschlüssel durch PRIMARY KEY  gesetzt und in den Klammern der betreffende Spaltenname. Mit CONSTRAINT bekommt der Primärschlüssel einen Namen, durch den er später ansprechbar wird. Man könnte PRIMARY KEY auch direkt hinter den Spaltennamen setzen, wenn die Tabelle nur einen Primärschlüssel bekommt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. Fremdschlüssel (FOREIGN KEY)==&lt;br /&gt;
Fremdschlüssel dienen zur Verknüpfung von Tabellen und beziehen sich auf den Primärschlüssel einer anderen Tabelle. Dadurch werden die zwei Tabellen von einander abhängig.&lt;br /&gt;
Wird eine Spalte als Fremdschlüssel gesetzt, können nur noch Werte eingesetzt werden, die in der verknüpften Tabelle, Spalte Primärschlüssel, eingebbar sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE studiengang      &lt;br /&gt;
      (&lt;br /&gt;
      l_id	   INTEGER    NOT NULL,      &lt;br /&gt;
      l_name	   VARCHAR    NOT NULL,    &lt;br /&gt;
    &lt;br /&gt;
      CONSTRAINT studiengang_pk      &lt;br /&gt;
      PRIMARY KEY (l_id)    &lt;br /&gt;
      );&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)  &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man legt den Fremdschlüssel mit FOREIGN KEY direkt an die Spaltendefinition an oder danach. Auch hier könnte man diesen mit CONSTRAINT benennen.&lt;br /&gt;
Mit REFERENCES wird die Tabelle, die „Vatertabelle“, angegeben auf die sich der Fremdschlüssel bezieht und in den Klammern den Primärschlüssel. Die Tabelle auf die verwiesen wird muss jedoch schon vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wird ein Datensatz aus der Vatertabelle gelöscht, müssen auch die Datensätze aus der abhängigen Tabelle behandelt werden. Dies dient zur Bewahrung der Datenintegrität.&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es vier Fälle:&lt;br /&gt;
#NO ACTION &amp;lt;br/&amp;gt;Wird aus der Vatertabelle etwas gelöscht, passiert in der abhängigen Tabelle nichts.&lt;br /&gt;
#CASCADE &amp;lt;br/&amp;gt;Die Datensätze der abhängigen Tabelle werden mit gelöscht oder aktualisiert.&lt;br /&gt;
#SET DEFAULT &amp;lt;br/&amp;gt;Der Schlüsselwert der abhängigen Tabelle wird auf DEFAULT gesetzt.&lt;br /&gt;
#SET NULL &amp;lt;br/&amp;gt;Wenn etwas in der Vatertabelle geändert oder gelöscht wird, wird der abhängige Wert auf NULL gesetzt.&lt;br /&gt;
&lt;br /&gt;
Das könnte dann folgendermaßen aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)&lt;br /&gt;
 &lt;br /&gt;
      [ON DELETE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      [ON UPDATE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. UNIQUE==&lt;br /&gt;
Eine weitere Möglichkeit um zu verhindern, dass ein Wert in einer Spalte öfter vorkommt, außer dem Primärschlüssel, lautet UNIQUE. Das Datenbanksystem verhindert damit automatisch, dass ein Wert doppelt eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten UNIQUE zu setzten. &lt;br /&gt;
Einmal direkt hinter der Spaltendefinition oder danach. Dabei können auch gleichzeitig mehrere Spalten angegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     	INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     	VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  	VARCHAR,   &lt;br /&gt;
      s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
      UNIQUE (s_name, s_studiengang [...])&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. CHECK==&lt;br /&gt;
Mit CHECK lassen sich Regeln selbst definieren. Bestimmte Spalten werden dann beim Eingeben von Datensätzen überprüft und diese daraufhin zugelassen oder nicht.&lt;br /&gt;
Das heißt man kann testen ob eine Eingabe zu bestimmten Werten gehört, oder in einem bestimmten Verhältnis zu einem anderen Wert steht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr),&lt;br /&gt;
		&lt;br /&gt;
      CHECK (b_bestellmenge &amp;lt;= b_anzahl)	&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier kann CHECK direkt an die Spaltendefinition oder an das Ende der Tabellendefinition. Auch kann hier wieder mit CONSTRAINT gearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==5. DEFAULT==&lt;br /&gt;
Man kann Standardwerte vorgeben, die dann wenn nicht anderes angegeben wird eingesetzt werden. Dadurch werden keine NULL-Werte gespeichert.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER DEFAULT &#039;0&#039;,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
      CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird DEFAULT einfach an die Spaltendefinition hinten dran gehängt und der Wert angegeben. Somit wird automatisch wenn nichts anderes angeben wird &#039;0&#039; eingesetzt.&lt;br /&gt;
Man könnte auch die CHECK Klausel mit DEFAULT erweitern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12247</id>
		<title>SQL Unterabfragen</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12247"/>
		<updated>2008-07-16T14:15:08Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
&lt;br /&gt;
=Definition=&lt;br /&gt;
Unterabfragen, die auch Sub-Selects oder Sub-Querys genannt werden, können verwendet werden um andere SQL-Anweisungen, mit einzubinden.&lt;br /&gt;
Dadurch können Ergebnisse einer Abfrage sofort in einer neuen Abfrage verwendet werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	kundennr, bestelldatum, rechnungsbetrag&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag =&lt;br /&gt;
			(&lt;br /&gt;
			SELECT max(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird in der WHERE-Bedingung eine SELECT-Abfrage formuliert, die sich komplett in runden Klammern befindet. Das Ergebnis dieser Abfrage gibt genau einen Wert zurück, der mit dem rechnungsbetrag verglichen wird. Der Rückgabewert muss folglich zum Selektionskriterium passen.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich gibt es zwei Varianten, die Unterabfragen liefern können. Entweder liefern sie einen Wert, also eine Zeile zurück oder mehrere Zeilen.&lt;br /&gt;
Dabei können die Abfragen eigenständig ausgeführt werden, ohne Beeinflussung durch die Hauptabfrage oder umgekehrt.&lt;br /&gt;
Sie lassen sich auch in DELETE-, UPDATE- und INSERT-Anweisungen verwenden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit einem Rückgabewert=&lt;br /&gt;
Hier gelten folgende Bedingungen:&lt;br /&gt;
Die Unterabfrage gibt genau einen Wert zurück.&lt;br /&gt;
Die Unterabfrage gibt genau eine Spalte zurück.&lt;br /&gt;
&lt;br /&gt;
Bei dieser Art von Abfrage wird hauptsächlich mit Vergleichsoperatoren wie =, &amp;gt;, &amp;gt;=, &amp;lt; oder &amp;lt;= gearbeitet.&lt;br /&gt;
Man kann diese Unterabfragen auch gut verwenden für Aggregatfunktionen wie MAX oder AVG.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	bestellnr&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag &amp;gt;&lt;br /&gt;
			(&lt;br /&gt;
			SELECT AVG(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird mit SELECT AVG(rechnungsbetrag) der durchschnittliche Rechnungsbetrag ermittelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit mehreren Rückgabewerten=&lt;br /&gt;
Nun ist der Einsatz von Mengenoperatoren (vo ALL, vo ANY, IN, EXISTS) notwendig, da jetzt mit mehreren Werten verglichen wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	name, gehalt, abteilung&lt;br /&gt;
	FROM   	mitarbeiter&lt;br /&gt;
	WHERE 	gehalt &amp;lt; ALL&lt;br /&gt;
			(&lt;br /&gt;
			 SELECT gehalt 	FROM	 mitarbeiter	WHERE abteilung = 5&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Unterabfrage gibt nun alle Gehälter aus der Abteilung 5 aus. ALL vergleicht ob die Bedingung auf alle Zeilen der Unterabfrage zutrifft. Ob es also ein gehalt gibt, das kleiner ist, als alle Gehälter aus der Abteilung 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Regeln für Unterabfragen=&lt;br /&gt;
#die Unterabfrage wir in runden Klammer gesetzt&lt;br /&gt;
#wird als rechtsseitiger Ausdruck, Vergleich oder EXISTS-Bedingung eingesetzt&lt;br /&gt;
#ein einzelner Datensatz als Rückgabewert kann mit Vergleichsoperatoren verwendet werden&lt;br /&gt;
#bei mehreren Datensätzen verwendet man Mengenoperatoren&lt;br /&gt;
#ORDER BY ist in einer Unterabfrage unzulässig&lt;br /&gt;
#in der Unterabfrage ist UNION nicht zulässig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12246</id>
		<title>SQL Unterabfragen</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Unterabfragen&amp;diff=12246"/>
		<updated>2008-07-16T14:12:32Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Definition=&lt;br /&gt;
Unterabfragen, die auch Sub-Selects oder Sub-Querys genannt werden, können verwendet werden um andere SQL-Anweisungen, mit einzubinden.&lt;br /&gt;
Dadurch können Ergebnisse einer Abfrage sofort in einer neuen Abfrage verwendet werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	kundennr, bestelldatum, rechnungsbetrag&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag =&lt;br /&gt;
			(&lt;br /&gt;
			SELECT max(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird in der WHERE-Bedingung eine SELECT-Abfrage formuliert, die sich komplett in runden Klammern befindet. Das Ergebnis dieser Abfrage gibt genau einen Wert zurück, der mit dem rechnungsbetrag verglichen wird. Der Rückgabewert muss folglich zum Selektionskriterium passen.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich gibt es zwei Varianten, die Unterabfragen liefern können. Entweder liefern sie einen Wert, also eine Zeile zurück oder mehrere Zeilen.&lt;br /&gt;
Dabei können die Abfragen eigenständig ausgeführt werden, ohne Beeinflussung durch die Hauptabfrage oder umgekehrt.&lt;br /&gt;
Sie lassen sich auch in DELETE-, UPDATE- und INSERT-Anweisungen verwenden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit einem Rückgabewert=&lt;br /&gt;
Hier gelten folgende Bedingungen:&lt;br /&gt;
Die Unterabfrage gibt genau einen Wert zurück.&lt;br /&gt;
Die Unterabfrage gibt genau eine Spalte zurück.&lt;br /&gt;
&lt;br /&gt;
Bei dieser Art von Abfrage wird hauptsächlich mit Vergleichsoperatoren wie =, &amp;gt;, &amp;gt;=, &amp;lt; oder &amp;lt;= gearbeitet.&lt;br /&gt;
Man kann diese Unterabfragen auch gut verwenden für Aggregatfunktionen wie MAX oder AVG.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	bestellnr&lt;br /&gt;
	FROM   	bestellung&lt;br /&gt;
	WHERE 	rechnungsbetrag &amp;gt;&lt;br /&gt;
			(&lt;br /&gt;
			SELECT AVG(rechnungsbetrag) 	FROM	 bestellung&lt;br /&gt;
			);	&lt;br /&gt;
&amp;lt;/pre&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird mit SELECT AVG(rechnungsbetrag) der durchschnittliche Rechnungsbetrag ermittelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Unterabfragen mit mehreren Rückgabewerten=&lt;br /&gt;
Nun ist der Einsatz von Mengenoperatoren (vo ALL, vo ANY, IN, EXISTS) notwendig, da jetzt mit mehreren Werten verglichen wird.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	SELECT 	name, gehalt, abteilung&lt;br /&gt;
	FROM   	mitarbeiter&lt;br /&gt;
	WHERE 	gehalt &amp;lt; ALL&lt;br /&gt;
			(&lt;br /&gt;
			SELECT gehalt 	FROM	 mitarbeiter	WHERE abteilung = 5&lt;br /&gt;
			);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Unterabfrage gibt nun alle Gehälter aus der Abteilung 5 aus. ALL vergleicht ob die Bedingung auf alle Zeilen der Unterabfrage zutrifft. Ob es also ein gehalt gibt, das kleiner ist, als alle Gehälter aus der Abteilung 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Regeln für Unterabfragen=&lt;br /&gt;
#die Unterabfrage wir in runden Klammer gesetzt&lt;br /&gt;
#wird als rechtsseitiger Ausdruck, Vergleich oder EXISTS-Bedingung eingesetzt&lt;br /&gt;
#ein einzelner Datensatz als Rückgabewert kann mit Vergleichsoperatoren verwendet werden&lt;br /&gt;
#bei mehreren Datensätzen verwendet man Mengenoperatoren&lt;br /&gt;
#ORDER BY ist in einer Unterabfrage unzulässig&lt;br /&gt;
#in der Unterabfrage ist UNION nicht zulässig&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12228</id>
		<title>SQL Integritätsregeln</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12228"/>
		<updated>2008-07-16T12:04:59Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Die Inhalte einer Datenbank sollten idealerweise fehlerfrei und in sich schlüssig sein.&lt;br /&gt;
Beim Anlegen von Tabellen, werden auch gleich deren Integritätsregeln festgelegt. Somit werden fehlerhafte Datensätze gar nicht erst angenommen.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Integritätsregeln:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Primärschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Jeder Datensatz wird eindeutig ansprechbar.&lt;br /&gt;
#&#039;&#039;&#039;Fremdschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Tabellen werden eindeutig Verknüpft.&lt;br /&gt;
#&#039;&#039;&#039;UNIQUE	&#039;&#039;&#039;&amp;lt;br/&amp;gt;Es wird kein Wert doppelt abgespeichert.&lt;br /&gt;
#&#039;&#039;&#039;CHECK&#039;&#039;&#039; &amp;lt;br/&amp;gt;Fehleingaben werden verhindert durch Überprüfungsregeln.&lt;br /&gt;
#&#039;&#039;&#039;DEFAULT&#039;&#039;&#039; &amp;lt;br/&amp;gt;Standardwerte können gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==1. Primärschlüssel (PRIMARY KEY)==&lt;br /&gt;
Mit einem Primärschlüssel,werden alle Datensätze eindeutig identifizierbar. Beim erstellen von Datensätzen muss das Feld dieser Spalte gefüllt werden. Ist das nicht der Fall, oder ist dieser Wert schon vorhanden, wird der Datensatz nicht angenommen.&lt;br /&gt;
Die Spalte die als Primärschlüssel bestimmt wird, sollte dafür auch geeignet sein wie beispielsweise die Matrikelnummer jedes Studenten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr)&lt;br /&gt;
	);&lt;br /&gt;
&amp;lt;/pre&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird der Primärschlüssel durch PRIMARY KEY  gesetzt und in den Klammern der betreffende Spaltenname. Mit CONSTRAINT bekommt der Primärschlüssel einen Namen, durch den er später ansprechbar wird. Man könnte PRIMARY KEY auch direkt hinter den Spaltennamen setzen, wenn die Tabelle nur einen Primärschlüssel bekommt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. Fremdschlüssel (FOREIGN KEY)==&lt;br /&gt;
Fremdschlüssel dienen zur Verknüpfung von Tabellen und beziehen sich auf den Primärschlüssel einer anderen Tabelle. Dadurch werden die zwei Tabellen von einander abhängig.&lt;br /&gt;
Wird eine Spalte als Fremdschlüssel gesetzt, können nur noch Werte eingesetzt werden, die in der verknüpften Tabelle, Spalte Primärschlüssel, eingebbar sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE studiengang      &lt;br /&gt;
      (&lt;br /&gt;
      l_id		   INTEGER	  NOT NULL,      &lt;br /&gt;
      l_name	   VARCHAR    NOT NULL,    &lt;br /&gt;
    &lt;br /&gt;
	CONSTRAINT studiengang_pk      &lt;br /&gt;
      PRIMARY KEY (l_id)    &lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
	s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
	FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)  &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man legt den Fremdschlüssel mit FOREIGN KEY direkt an die Spaltendefinition an oder danach. Auch hier könnte man diesen mit CONSTRAINT benennen.&lt;br /&gt;
Mit REFERENCES wird die Tabelle, die „Vatertabelle“, angegeben auf die sich der Fremdschlüssel bezieht und in den Klammern den Primärschlüssel. Die Tabelle auf die verwiesen wird muss jedoch schon vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wird ein Datensatz aus der Vatertabelle gelöscht, müssen auch die Datensätze aus der abhängigen Tabelle behandelt werden. Dies dient zur Bewahrung der Datenintegrität.&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es vier Fälle:&lt;br /&gt;
#NO ACTION &amp;lt;br/&amp;gt;Wird aus der Vatertabelle etwas gelöscht, passiert in der abhängigen Tabelle nichts.&lt;br /&gt;
#CASCADE &amp;lt;br/&amp;gt;Die Datensätze der abhängigen Tabelle werden mit gelöscht oder aktualisiert.&lt;br /&gt;
#SET DEFAULT &amp;lt;br/&amp;gt;Der Schlüsselwert der abhängigen Tabelle wird auf DEFAULT gesetzt.&lt;br /&gt;
#SET NULL &amp;lt;br/&amp;gt;Wenn etwas in der Vatertabelle geändert oder gelöscht wird, wird der abhängige Wert auf NULL gesetzt.&lt;br /&gt;
&lt;br /&gt;
Das könnte dann folgendermaßen aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
	s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
	FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)&lt;br /&gt;
 &lt;br /&gt;
	[ON DELETE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
	[ON UPDATE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. UNIQUE==&lt;br /&gt;
Eine weitere Möglichkeit um zu verhindern, dass ein Wert in einer Spalte öfter vorkommt, außer dem Primärschlüssel, lautet UNIQUE. Das Datenbanksystem verhindert damit automatisch, dass ein Wert doppelt eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten UNIQUE zu setzten. &lt;br /&gt;
Einmal direkt hinter der Spaltendefinition oder danach. Dabei können auch gleichzeitig mehrere Spalten angegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
	s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
	UNIQUE (s_name, s_studiengang [...])&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. CHECK==&lt;br /&gt;
Mit CHECK lassen sich Regeln selbst definieren. Bestimmte Spalten werden dann beim Eingeben von Datensätzen überprüft und diese daraufhin zugelassen oder nicht.&lt;br /&gt;
Das heißt man kann testen ob eine Eingabe zu bestimmten Werten gehört, oder in einem bestimmten Verhältnis zu einem anderen Wert steht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    		VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  		VARCHAR, &lt;br /&gt;
	b_anzahl		INTEGER,  &lt;br /&gt;
	b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr),&lt;br /&gt;
		&lt;br /&gt;
	CHECK (b_bestellmenge &amp;lt;= b_anzahl)	&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier kann CHECK direkt an die Spaltendefinition oder an das Ende der Tabellendefinition. Auch kann hier wieder mit CONSTRAINT gearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==5. DEFAULT==&lt;br /&gt;
Man kann Standardwerte vorgeben, die dann wenn nicht anderes angegeben wird eingesetzt werden. Dadurch werden keine NULL-Werte gespeichert.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER DEFAULT &#039;0&#039;,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird DEFAULT einfach an die Spaltendefinition hinten dran gehängt und der Wert angegeben. Somit wird automatisch wenn nichts anderes angeben wird &#039;0&#039; eingesetzt.&lt;br /&gt;
Man könnte auch die CHECK Klausel mit DEFAULT erweitern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
[[Kategorie:Informatik]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12227</id>
		<title>SQL Integritätsregeln</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=SQL_Integrit%C3%A4tsregeln&amp;diff=12227"/>
		<updated>2008-07-16T12:03:33Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Die Inhalte einer Datenbank sollten idealerweise fehlerfrei und in sich schlüssig sein.&lt;br /&gt;
Beim Anlegen von Tabellen, werden auch gleich deren Integritätsregeln festgelegt. Somit werden fehlerhafte Datensätze gar nicht erst angenommen.&lt;br /&gt;
&lt;br /&gt;
Es gibt folgende Integritätsregeln:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Primärschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Jeder Datensatz wird eindeutig ansprechbar.&lt;br /&gt;
#&#039;&#039;&#039;Fremdschlüssel&#039;&#039;&#039; &amp;lt;br/&amp;gt;Tabellen werden eindeutig Verknüpft.&lt;br /&gt;
#&#039;&#039;&#039;UNIQUE	&#039;&#039;&#039;&amp;lt;br/&amp;gt;Es wird kein Wert doppelt abgespeichert.&lt;br /&gt;
#&#039;&#039;&#039;CHECK&#039;&#039;&#039; &amp;lt;br/&amp;gt;Fehleingaben werden verhindert durch Überprüfungsregeln.&lt;br /&gt;
#&#039;&#039;&#039;DEFAULT&#039;&#039;&#039; &amp;lt;br/&amp;gt;Standardwerte können gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==1. Primärschlüssel (PRIMARY KEY)==&lt;br /&gt;
Mit einem Primärschlüssel,werden alle Datensätze eindeutig identifizierbar. Beim erstellen von Datensätzen muss das Feld dieser Spalte gefüllt werden. Ist das nicht der Fall, oder ist dieser Wert schon vorhanden, wird der Datensatz nicht angenommen.&lt;br /&gt;
Die Spalte die als Primärschlüssel bestimmt wird, sollte dafür auch geeignet sein wie beispielsweise die Matrikelnummer jedes Studenten.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr)&lt;br /&gt;
	);&lt;br /&gt;
&amp;lt;/pre&amp;gt;	&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird der Primärschlüssel durch PRIMARY KEY  gesetzt und in den Klammern der betreffende Spaltenname. Mit CONSTRAINT bekommt der Primärschlüssel einen Namen, durch den er später ansprechbar wird. Man könnte PRIMARY KEY auch direkt hinter den Spaltennamen setzen, wenn die Tabelle nur einen Primärschlüssel bekommt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. Fremdschlüssel (FOREIGN KEY)==&lt;br /&gt;
Fremdschlüssel dienen zur Verknüpfung von Tabellen und beziehen sich auf den Primärschlüssel einer anderen Tabelle. Dadurch werden die zwei Tabellen von einander abhängig.&lt;br /&gt;
Wird eine Spalte als Fremdschlüssel gesetzt, können nur noch Werte eingesetzt werden, die in der verknüpften Tabelle, Spalte Primärschlüssel, eingebbar sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE studiengang      &lt;br /&gt;
      (&lt;br /&gt;
      l_id		   INTEGER	  NOT NULL,      &lt;br /&gt;
      l_name	   VARCHAR    NOT NULL,    &lt;br /&gt;
    &lt;br /&gt;
	CONSTRAINT studiengang_pk      &lt;br /&gt;
      PRIMARY KEY (l_id)    &lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
	s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
	FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)  &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man legt den Fremdschlüssel mit FOREIGN KEY direkt an die Spaltendefinition an oder danach. Auch hier könnte man diesen mit CONSTRAINT benennen.&lt;br /&gt;
Mit REFERENCES wird die Tabelle, die „Vatertabelle“, angegeben auf die sich der Fremdschlüssel bezieht und in den Klammern den Primärschlüssel. Die Tabelle auf die verwiesen wird muss jedoch schon vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wird ein Datensatz aus der Vatertabelle gelöscht, müssen auch die Datensätze aus der abhängigen Tabelle behandelt werden. Dies dient zur Bewahrung der Datenintegrität.&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es vier Fälle:&lt;br /&gt;
#NO ACTION &amp;lt;br/&amp;gt;Wird aus der Vatertabelle etwas gelöscht, passiert in der abhängigen Tabelle nichts.&lt;br /&gt;
#CASCADE &amp;lt;br/&amp;gt;Die Datensätze der abhängigen Tabelle werden mit gelöscht oder aktualisiert.&lt;br /&gt;
#SET DEFAULT &amp;lt;br/&amp;gt;Der Schlüsselwert der abhängigen Tabelle wird auf DEFAULT gesetzt.&lt;br /&gt;
#SET NULL &amp;lt;br/&amp;gt;Wenn etwas in der Vatertabelle geändert oder gelöscht wird, wird der abhängige Wert auf NULL gesetzt.&lt;br /&gt;
&lt;br /&gt;
Das könnte dann folgendermaßen aussehen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
	s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
	FOREIGN KEY (s_studiengang) REFERENCES studiengang (l_id)&lt;br /&gt;
 &lt;br /&gt;
	[ON DELETE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
	[ON UPDATE {NO ACTION | CASCADE  |SET DEAFAULT | SET NULL}] &lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. UNIQUE==&lt;br /&gt;
Eine weitere Möglichkeit um zu verhindern, dass ein Wert in einer Spalte öfter vorkommt, außer dem Primärschlüssel, lautet UNIQUE. Das Datenbanksystem verhindert damit automatisch, dass ein Wert doppelt eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten UNIQUE zu setzten. &lt;br /&gt;
Einmal direkt hinter der Spaltendefinition oder danach. Dabei können auch gleichzeitig mehrere Spalten angegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE student		&lt;br /&gt;
      (      &lt;br /&gt;
      s_matr     		INTEGER    NOT NULL,      &lt;br /&gt;
      s_name     		VARCHAR    NOT NULL,      &lt;br /&gt;
      s_vorname  		VARCHAR,   &lt;br /&gt;
	s_studiengang  	VARCHAR,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT student_pk  &lt;br /&gt;
      PRIMARY KEY (s_matr),&lt;br /&gt;
&lt;br /&gt;
	UNIQUE (s_name, s_studiengang [...])&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. CHECK==&lt;br /&gt;
Mit CHECK lassen sich Regeln selbst definieren. Bestimmte Spalten werden dann beim Eingeben von Datensätzen überprüft und diese daraufhin zugelassen oder nicht.&lt;br /&gt;
Das heißt man kann testen ob eine Eingabe zu bestimmten Werten gehört, oder in einem bestimmten Verhältnis zu einem anderen Wert steht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    		VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  		VARCHAR, &lt;br /&gt;
	b_anzahl		INTEGER,  &lt;br /&gt;
	b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr),&lt;br /&gt;
		&lt;br /&gt;
	CHECK (b_bestellmenge &amp;lt;= b_anzahl)	&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier kann CHECK direkt an die Spaltendefinition oder an das Ende der Tabellendefinition. Auch kann hier wieder mit CONSTRAINT gearbeitet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==5. DEFAULT==&lt;br /&gt;
Man kann Standardwerte vorgeben, die dann wenn nicht anderes angegeben wird eingesetzt werden. Dadurch werden keine NULL-Werte gespeichert.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE TABLE buch		&lt;br /&gt;
      (      &lt;br /&gt;
      b_nr    		INTEGER    NOT NULL,      &lt;br /&gt;
      b_titel    	VARCHAR    NOT NULL,      &lt;br /&gt;
      b_verlag  	VARCHAR, &lt;br /&gt;
      b_anzahl		INTEGER DEFAULT &#039;0&#039;,  &lt;br /&gt;
      b_bestellmenge  	INTEGER,             &lt;br /&gt;
      &lt;br /&gt;
	CONSTRAINT buch_pk  &lt;br /&gt;
      PRIMARY KEY (b_nr)&lt;br /&gt;
      );&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hier wird DEFAULT einfach an die Spaltendefinition hinten dran gehängt und der Wert angegeben. Somit wird automatisch wenn nichts anderes angeben wird &#039;0&#039; eingesetzt.&lt;br /&gt;
Man könnte auch die CHECK Klausel mit DEFAULT erweitern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Throll, M.; Bartosch, O. (2005): Einstieg in SQL]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Datei:Schritte.jpg&amp;diff=12164</id>
		<title>Datei:Schritte.jpg</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Datei:Schritte.jpg&amp;diff=12164"/>
		<updated>2008-07-15T21:54:28Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Datei:Bilder.jpg&amp;diff=12163</id>
		<title>Datei:Bilder.jpg</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Datei:Bilder.jpg&amp;diff=12163"/>
		<updated>2008-07-15T21:53:52Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Hauser,_T._et._al._(2008):_ActionScript_3&amp;diff=12158</id>
		<title>Hauser, T. et. al. (2008): ActionScript 3</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Hauser,_T._et._al._(2008):_ActionScript_3&amp;diff=12158"/>
		<updated>2008-07-15T19:12:26Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quelle:Buch &lt;br /&gt;
| key         = Hauser, T. et al. (2008)&lt;br /&gt;
| authors     = Tobias Hauser, Armin Kappler, Christian Wenz&lt;br /&gt;
| title       = ActionScript3 - Das Praxisbuch&lt;br /&gt;
| subtitle    = Aktuell zu Adobe Flash CS3&lt;br /&gt;
| edition     = 1 &lt;br /&gt;
| volume      = 13 &lt;br /&gt;
| year        = 2008&lt;br /&gt;
| publisher   = Galileo Press&lt;br /&gt;
| address     = Bonn&lt;br /&gt;
| isbn        = 978-3-8362-1052-2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Vorlage:Quelle|Buch]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Hauser,_T._et._al._(2008):_ActionScript_3&amp;diff=12157</id>
		<title>Hauser, T. et. al. (2008): ActionScript 3</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Hauser,_T._et._al._(2008):_ActionScript_3&amp;diff=12157"/>
		<updated>2008-07-15T19:12:04Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quelle:Buch &lt;br /&gt;
| key         = Hauser, T. et al. (2008)&lt;br /&gt;
| authors     = Tobias Hauser, Armin Kappler, Christian Wenz&lt;br /&gt;
| title       = ActionScript3 - Das Praxisbuch&lt;br /&gt;
| subtitle    = Aktuell zu Adobe Flash CS3&lt;br /&gt;
| edition     = 1 &lt;br /&gt;
| volume      = 13 (z.B. bei Tagungsbänden)&lt;br /&gt;
| year        = 2008&lt;br /&gt;
| publisher   = Galileo Press&lt;br /&gt;
| address     = Bonn&lt;br /&gt;
| isbn        = 978-3-8362-1052-2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Vorlage:Quelle|Buch]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=12156</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=12156"/>
		<updated>2008-07-15T19:11:40Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN, oder im Kontextmenü des Objektes das mit der rechten Maustaste aufgerufen wird verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL, wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol.jpg]]&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol erweitert.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Hauser, T. et. al. (2008): ActionScript 3]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Glossar]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11850</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11850"/>
		<updated>2008-06-23T21:45:36Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN, oder im Kontextmenü des Objektes das mit der rechten Maustaste aufgerufen wird verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL, wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol.jpg]]&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
[[Medium:Symbol erweitert.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Hauser, T. et. al. (2008): ActionScript 3]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Flash-HowTo]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Datei:Symbol_erweitert.jpg&amp;diff=11849</id>
		<title>Datei:Symbol erweitert.jpg</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Datei:Symbol_erweitert.jpg&amp;diff=11849"/>
		<updated>2008-06-23T21:44:13Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11848</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11848"/>
		<updated>2008-06-23T21:42:52Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN, oder im Kontextmenü des Objektes das mit der rechten Maustaste aufgerufen wird verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL, wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
[[bild:Symbol.jpg]]&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Hauser, T. et. al. (2008): ActionScript 3]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Flash-HowTo]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Datei:Symbol.jpg&amp;diff=11847</id>
		<title>Datei:Symbol.jpg</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Datei:Symbol.jpg&amp;diff=11847"/>
		<updated>2008-06-23T21:38:35Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Hauser,_T._et._al._(2008):_ActionScript_3&amp;diff=11846</id>
		<title>Hauser, T. et. al. (2008): ActionScript 3</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Hauser,_T._et._al._(2008):_ActionScript_3&amp;diff=11846"/>
		<updated>2008-06-23T21:31:28Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Quelle:Buch &lt;br /&gt;
| key         = Hauser, T. et al. (2008)&lt;br /&gt;
| authors     = Tobias Hauser, Armin Kappler, Christian Wenz&lt;br /&gt;
| title       = ActionScript3 - Das Praxisbuch&lt;br /&gt;
| subtitle    = Aktuell zu Adobe Flash CS3&lt;br /&gt;
| edition     = 1 &lt;br /&gt;
| volume      = 13 (z.B. bei Tagungsbänden)&lt;br /&gt;
| year        = 2008&lt;br /&gt;
| publisher   = Galileo Press&lt;br /&gt;
| address     = Bonn&lt;br /&gt;
| isbn        = 978-3-8362-1052-2&lt;br /&gt;
| shelfmark   = Bibliothek: ST 324 F32 H37 V3 +1&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Vorlage:Quelle|Buch]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11845</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11845"/>
		<updated>2008-06-23T21:19:40Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN, oder im Kontextmenü des Objektes das mit der rechten Maustaste aufgerufen wird verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL, wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
*[[Hauser, T. et. al. (2008): ActionScript 3]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Flash-HowTo]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11844</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11844"/>
		<updated>2008-06-23T21:04:18Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN, oder im Kontextmenü des Objektes das mit der rechten Maustaste aufgerufen wird verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL, wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;br /&gt;
&lt;br /&gt;
=Quellen=&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Flash-HowTo]]&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
	<entry>
		<id>https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11843</id>
		<title>Symbol (Flash)</title>
		<link rel="alternate" type="text/html" href="https://glossar.hs-augsburg.de/w/index.php?title=Symbol_(Flash)&amp;diff=11843"/>
		<updated>2008-06-23T20:58:54Z</updated>

		<summary type="html">&lt;p&gt;Melissa: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{In Bearbeitung}}&lt;br /&gt;
=Definition=&lt;br /&gt;
Ein Symbol ist ein wiederverwendbares Element mit eigener Zeitleiste, die Flash unabhängig von der Hauptzeitleiste abspielt. &lt;br /&gt;
Es umfasst eine oder mehrere Vektorformen.&lt;br /&gt;
&lt;br /&gt;
Es gibt drei Arten von Symbolen:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Grafik-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Zeitleiste des Grafik-Symbols läuft parallel zur Hauptzeitleiste. Sie sind mit ActionScript nicht steuerbar und erlauben auch keinen ActionScript-Code.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Schaltflächen-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Die Schaltflächen-Symbole besitzen vier Zustände. Zum Einen den Normalzustand, UP gennant. Den DARÜBER Zustand, wenn sich die Maus über die Schaltfläche bewegt. &lt;br /&gt;
Des weiteren den GEDRÜCKT und den AKTIV Zustand.&lt;br /&gt;
Das sind Zustände die nur grafisch sichtbar sind und enthalten keinen ActionScript-Code.&lt;br /&gt;
Man kann jedoch per ActionScript Ereignisse abfangen und die Zustände lassen sich  ebenfalls mit ActionScript ändern.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Movieclip-Symbole&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Ein Movieclip Symbol besitzt eine eigene Zeitleiste. Man kann per ActionScript auf die Movieclips zugreifen und diese nach Belieben verändern, ob in Größe Position oder Aussehen. Somit sind Movieclips sehr flexibel und die wichtigsten Elemente eines Flash-Films, wenn es um die Steuerung mit Flash geht.&lt;br /&gt;
&lt;br /&gt;
=Ein Symbol erstellen=&lt;br /&gt;
Man verwendet ein beliebiges Objekt. Daraus kann ein Symbol erstellt werden. Im Menü MODIFIZIEREN, oder im Kontextmenü des Objektes das mit der rechten Maustaste aufgerufen wird verwendet man den Befehl IN SYMBOL KONVERTIEREN. &lt;br /&gt;
Mit dem Befehl EINFÜGEN &amp;gt; NEUES SYMBOL, wird ein neues Symbol ohne Inhalt hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
Bei „Name:“ kann man den Namen des Symbols für die Bibliothek angeben. Dieser ist jedoch für ActionScript unwichtig.&lt;br /&gt;
Bei „Typ:“ wird die Symbolart bestimmt.&lt;br /&gt;
Unter „Registrierung:“ legt man fest, wo das Symbol seinen Nullpunkt im Koordinatensystem hat.&lt;br /&gt;
&lt;br /&gt;
Wenn man die Schaltfläche „Erweitert“ betätigt werden weitere Optionen aufgezeigt, die für die ActionScript Programmierung relevant sind.&lt;br /&gt;
Möchte man auf das Symbol über ActionScript zugreifen, betätigt man das Häkchen „Export für ActionScript“ unter „Verknüpfung:“.&lt;br /&gt;
Gibt man eine „Klasse:“ an, kann der Movieclip per Instanziierung eines Objekts mit ActionScript auf die Bühne gebracht werden.&lt;br /&gt;
&lt;br /&gt;
=Symbole in der Bibliothek=&lt;br /&gt;
Alle Symbole werden in der Bibliothek verwaltet. Sobald sich ein Symbol auf der Bühne, also auf dem Arbeitsraum, befindet handelt es sich um eine Instanz des Symbols in der Bibliothek. Dabei kann ein Symbol in der Bibliothek mehrere Instanzen haben. &lt;br /&gt;
Diese können dann individuell verändert werden, während das Symbol in der Bibliothek gleich bleibt. Verändert man jedoch das Symbol in der Bibliothek, wirkt sich das auf alle Instanzen aus. Da die Daten von Flash nur einmal in der Filmdatei gespeichert werden und ansonsten nur noch die Koordinaten und Änderungen gegenüber dem Originalsymbol, wird an Dateigröße gespart.&lt;/div&gt;</summary>
		<author><name>Melissa</name></author>
	</entry>
</feed>