5 Benutzerdefinierte Typen und Funktionen
|
|
- Clara Koenig
- vor 6 Jahren
- Abrufe
Transkript
1 5 Benutzerdefinierte Typen und Funktionen 5.1 Theorie Benutzerdefinierte Typen Für jedes Quentchen Daten in der Datenbank muß ein Datentyp festgelegt sein, der angibt, wie die Information repräsentiert wird und welche Operationen darauf angewendet werden können. Beim Aufbau einer Datenbank kann man sich vorstellen, daß zum Beispiel für die Repräsentation von Altersangaben Integer eingesetzt werden, für Geldbeträge Decimal(15,2) und für Winkel Double. Meistens hat man dabei bestimmte Ziele im Hinterkopf, wie diese Daten eingesetzt werden können, d.h. welche Operationen darauf angewendet werden dürfen. So macht es zum Beispiel Sinn, zwei Geldbeträge zusammenzuaddieren oder voneinander abzuziehen. Es ist aber wahrscheinlich nicht besonders sinnvoll zwei Geldbeträge miteinander zu multiplizieren oder gar ein Alter und einen Geldbetrag zu vergleichen. In DB2 können solche Einschränkungen definiert werden, die dann vom System überwacht werden. Mit den Schlüsselwörtern distinct type können vom Benutzer neue Datentypen definiert werden. Dieser neue Datentyp benutzt zwar die Darstellung eines vom System zur Verfügung gestellten Datentyps (Basistyp), wird aber trotzdem als davon verschiedener Datentyp angesehen (daher das Schlüsselwort distinct). Hier ein paar Beispiele: CREATE DISTINCT TYPE Geschlecht AS Char(1) WITH COMPARISONS; CREATE DISTINCT TYPE Geld AS Decimal(15,2) WITH COMPARISONS; CREATE DISTINCT TYPE Winkel AS Double WITH COMPARISONS; CREATE DISTINCT TYPE Video AS Blob(100M); Der Ausdruck WITH COMPARISONS erlaubt den Vergleich zweier Instanzen des neuen Datentyps mit den Vergleichsoperatoren =, <, <=, >, >= und <>. Dieser Ausdruck muß angegeben werden, wenn es sich bei dem Basistyp nicht um ein large object handelt (wie zum Beispiel Blob (Binary Large OBject)). Mit der Drop-Anweisung kann ein benutzerdefinierter Typ wieder verworfen werden. Dies geht allerdings nur, wenn er an keiner Stelle mehr im Datenbanksystem verwendet wird. Beispiele für das Löschen: DROP DISTINCT TYPE Geld; DROP DISTINCT TYPE Video; Es werden automatisch zwei Castingfunktionen bereitgestellt, um Werte zwischen dem benutzerdefinierten Typ und dem Basistyp konvertieren zu können. Der Name der Funktion die einen Wert des Basistyps in einen Wert des neuen Typs umwandelt hat den gleichen Namen wie der neue Typ. Um den Wert in einen Geldbetrag zu wandeln gibt es zwei Möglichkeiten: Geld( ) CAST( AS Geld) 42
2 Die Funktionen des Basistyps (außer Casting und Vergleich) sind nicht direkt auf den neuen Typ anwendbar. Da ein Datentyp ohne weitere Funktionen wahrscheinlich nicht sehr sinnvoll ist, kommen wir zum nächsten Punkt dieses Teils, den benutzerdefinierten Funktionen Benutzerdefinierte Funktionen Bei benutzerdefinierten Funktionen wird grundsätzlich zwischen zwei verschiedenen Varianten unterschieden, den abgeleiteten Funktionen (sourced functions) und den externen Funktionen (external functions). Auf diese zwei Varianten soll im folgenden im Detail eingegangen werden. Abgeleitete Funktionen Eine abgeleitete Funktion ist eine neue Funktion, die auf einer Funktion aufbaut die bereits existiert. Diese existierende Funktion wird auch Ursprungsfunktion (source function) genannt. Beim Aufruf einer abgeleiteten Funktion werden die Argumente in den Basistyp umgewandelt, die Ursprungsfunktion des Basistyps wird aufgerufen und das Ergebnis wird wieder in den benutzerdefinierten Typ umgewandelt. Abbildung 19 zeigt ein Beispiel für den Datentyp Geld und Addition. Aufruf der Ursprungsfunktion "+"(Decimal(15,2),Decimal(15,2)) Decimal(15,2) Casten der Argumente Casten des Ergebnisses "+"(Geld, Geld) Geld Abbildung 19: Aufruf einer abgeleiteten Funktion Abbildung 20 zeigt die Syntax der create function Anweisung um eine abgeleitete Funktion zu deklarieren. Die einzelnen Teile dieser Anweisung haben folgende Bedeutung: 1. function-name: der Name der Funktion. Es können arithmetische Operatoren wie + oder * können als Namen angegeben werden, müssen aber in doppelten Anführungszeichen eingefaßt werden. 2. (datatype,...): hier müssen die Datentypen der Funktionsargumente angegeben werden. Die Klammern müssen auch angegeben, falls keine Argumente vorhanden sind. 3. RETURNS Klausel: gibt den Datentyp des Rückgabewerts an. 4. SPECIFIC Klausel: hiermit können verschiedene Instanzen von namensgleichen Funktionen angelegt werden (wird von uns nicht benötigt). 43
3 Abbildung 20: CREATE FUNCTION Anweisung (für abgeleitete Funktionen) 5. SOURCE Klausel: hier wird die Ursprungsfunktion angegeben. Dabei kann die Ursprungsfunktion auf drei verschiedene Arten angegeben werden: (a) Durch den Funktionsnamen ohne Argumente (dies geht nur bei benutzerdefinierten Ursprungsfunktionen). (b) Durch den Namen der Instanz (SPECIFIC), wird von uns nicht benutzt. (c) Durch die Signatur (Name und Datentypen der Argumente) der Ursprungsfunktion). Hier ein paar Beispiele, welche Funktionen für den benutzerdefinierten Typ Geld angelegt werden könnten: CREATE FUNCTION "+"(Geld, Geld) RETURNS Geld SOURCE "+"(Decimal(), Decimal()); CREATE FUNCTION "-"(Geld, Geld) RETURNS Geld SOURCE "-"(Decimal(), Decimal()); CREATE FUNCTION avg(geld) RETURNS Geld SOURCE avg(decimal()); Externe Funktionen Eine externe Funktion ist eine Funktion, die in einer Hostsprache (wie z.b. C) und nicht in SQL implementiert wird. Auf diese Weise können neue Funktionen für Basistypen definiert werden oder eben beliebige Funktionen für benutzerdefinierte 44
4 Typen. Durch die Installation von externen Funktionen in einer Datenbank wird diese allen Applikationen (selbst interaktiven SQL-Anfragen) zur Verfügung gestellt, d.h. diese Funktion muß nicht jedesmal neu implementiert werden. Abbildung 21: CREATE FUNCTION Anweisung (für externe Funktionen) Abbildung 21 zeigt das Syntaxdiagramm für einen create function Aufruf für externe Funktionen. Die einzelnen Teile der Abbildung haben folgende Bedeutung: 1. function-name: der Name der Funktion. 2. (datatype,...): Datentypen der Funktionsargumente. Beim Übergeben der Argumente an das C-Programm werden die SQL-Datentypen in die entsprechenden C-Datentypen umgewandelt. Eine Übersicht der Datentypumwandlung ist in den Abbildungen 22 und 23 zu finden. Dabei ist zu beachten, daß keine Argumente vom Typ Decimal an ein C-Programm übergeben werden können. Diese müssen vorher in einen Double oder Char Wert umgewandelt werden. 3. RETURNS Klausel: gibt den Datentyp des Rückgabewerts an. Dabei werden die Typen nach Abbildungen 22 und 23 umgewandelt. Falls ein Decimal-Wert zurückge- 45
5 Abbildung 22: Umwandlung von SQL-Datentypen in C-Typen (Teil 1) geben werden soll, muß dieser aus einem anderen Typ umgewandelt werden, also z.b. RETURNS Decimal(3,1) CAST FROM Double. 4. SPECIFIC Klausel: Name der Instanz (wird von uns nicht benutzt). 5. EXTERNAL NAME Klausel: definiert die Funktion als extern. Außerdem wird hier angegeben, wo das Datenbanksystem die übersetzte C-Funktion findet. Die ausführlichste Form dieser Klausel gibt den vollen Pfad der ausführbaren Binärdatei an, gefolgt von einem Ausrufezeichen (!), gefolgt von dem Namen der Funktion in dieser Datei. Der Ausdruck EXTERNAL NAME /home/helmer/dbfns/bin/mortgage!payment gibt an, daß die Funktion payment in der Datei /home/helmer/dbfns/bin/mortgage verwendet werden soll. Es können mehrere Funktionen in der gleichen Datei enthalten sein und diese Funktionen müssen auch nicht den gleichen Namen wie die zugehörige SQL-Funktion besitzen (d.h. der Name in der CREATE FUNCTION Klausel kann verschieden von dem Namen in der EXTERNAL NAME Klausel sein). 6. VARIANT oder NOT VARIANT: eine der beiden Möglichkeiten muß spezifiziert werden. NOT VARIANT bedeutet, daß die Funktion bei einem Aufruf mit den gleichen Argumenten immer das gleiche Ergebnis liefert. VARIANT bedeutet, daß die Funktion mit den gleichen Argumenten verschiedene Ergebnisse liefern kann (z.b. Ergebnisse die auf Zufallszahlen beruhen). 7. EXTERNAL ACTION oder NO EXTERNAL ACTION: auch hier muß wieder eine der beiden Möglichkeiten spezifiziert werden. NO EXTERNAL ACTION bedeutet, daß beim Aufruf der Funktion keinerlei Operationen außerhalb des Datenbanksystems stattfinden. Mit EXTERNAL ACTION gibt man an, daß die Funktionen Operationen außerhalb der Datenbank anstößt (z.b. eine Mail schicken, etwas in eine Datei schreiben). 8. FENCED oder NOT FENCED: Bei einer Angabe von FENCED läuft die Funktion in einem eigenen Adressbereich (verschieden von dem Adressbereich des Datenbankservers). NOT FENCED-Funktionen laufen im gleichen Adressbereich wie die Datenbank (was 46
6 Abbildung 23: Umwandlung von SQL-Datentypen in C-Typen (Teil 2) bei Abstürzen zu üblen Effekten führen kann). Nur ein Benutzer mit Datenbankadministratorrechten kann eine Funktion NOT FENCED deklarieren. 9. NULL CALL oder NOT NULL CALL: spezifiziert was bei Aufrufen einer Funktion mit NULL-Argumenten passiert. NULL CALL sagt aus, daß NULL-Werte direkt an die Funktion übergeben werden, d.h. die Funktion müs sich selbst um diesen Sonderfall kümmern. Bei einer Angabe von NOT NULL CALL wird die Funktion erst gar nicht aufgerufen, es wird sofort das Ergebnis NULL zurückgeliefert. 10. LANGUAGE C: gibt an, daß die externe Funktion in C geschrieben wurde (oder zumindestens in einer Programmiersprache mit den gleichen Link-Konventionen). 47
7 11. PARAMETER STYLE DB2SQL: legt die Konventionen für den Aufruf einer externen Funktion fest. Wir benutzen den Modus DB2SQL. 12. NO SQL: sagt aus, daß in der externen Funktion keine SQL-Aufrufe vorhanden sein dürfen. (Zur Zeit dürfen externe Funktionen keine Datenbankzugriffe ausführen. 13. SCRATCHPAD oder NO SCRATCHPAD: bei einer Angabe von SCRATCHPAD wird Speicher allokiert, der zwischen den Aufrufen der Funktion erhalten bleibt. 14. FINAL CALL oder NO FINAL CALL: Bei einer Angabe von FINAL CALL wird die Funktion nach Beendigung des SQL-Ausdrucks in dem sie aufgerufen wurde noch ein letztes Mal mit einem speziellen Parameter noch einmal aufgerufen. (Auf diese Weise kann z.b. der Speicher für das SCRATCHPAD wieder freigegeben werden.) Nachdem nun das Einbinden einer externen Funktion in SQL besprochen wurde, soll nun gezeigt werden, wie die Schnittstelle der C-Funktion aussehen muß. Alle Parameter sind Zeiger auf Speicher der vom Datenbanksystem verwaltet wird. Funktionsname ( SQL Eingabeparameter /* Eingabe */ Rueckgabewert /* Ausgabe */ Eingabe Nullindikatoren /* Eingabe */ Rueckgabe Nullindikator /* Ausgabe */ SQLSTATE /* Ausgabe */ SQL Funktionsname /* Eingabe */ Instanzname /* Eingabe */ Fehlermeldung /* Ausgabe */ Scratchpad /* Eingabe */ Final Call Indikator /* Eingabe */ ); 1. Die ersten n Parameter sind Zeiger auf die n Parameter der SQL-Funktion. Die Datentypen wurden dabei nach Tabelle 22 und 23 umgewandelt. Für jeden Datentyp gibt es einen symbolischen Namen (aus der Headerdatei sqludf.h), der vor dem C- Datentyp bevorzugt verwendet werden sollte. 2. Der nächste Parameter ist ein Zeiger auf einen Speicherbereich in den das Ergebnis geschrieben werden sollte. Hier wird auch der C-Datentyp verwendet, die Umwandlung in den SQL-Datentyp wird vom Datenbanksystem übernommen. 3. Die nächsten n Parameter sind die Nullindikatoren für die Eingabeparameter. Jeder dieser Parameter ist ein Zeiger auf einen Wert vom Typ short, der gleich 0 ist, wenn der zugehörige Parameter nicht gleich NULL ist und gleich -1 ist, wenn der zugehörige Parameter gleich NULL ist. Diese Parameter existieren immer, selbst wenn die Funktion mit NOT NULL CALL deklariert wurde. 4. Der nächste Parameter ist der Nullindikator für den Rückgabewert. Die Konventionen entsprechen denen für die Eingabenullindikatoren. 48
8 5. In SQLSTATE sollte der Zustand nach Ausführung der Funktion angegeben werden. Bei SQLSTATE handelt es sich um einen nullterminierten char[6] String, der mit initialisiert wird. Die C-Funktion muß SQLSTATE nur ändern, falls beim Ablauf der Funktion Unregelmäßigkeiten aufgetreten sind. Die Codes 01H00 bis 01H99 sind für benutzerdefinierte Warnungen reserviert, die Codes bis für benutzerdefinierte Fehler. 6. Der nächste Parameter gibt in einem String den vollen Namen der SQL-Funktion an. Auf diese Weise können verschiedene SQL-Funktionen durch eine C-Funktion realisiert werden (falls dies wirklich erwünscht ist). 7. Hier steht der Instanzname der Funktion, wie er in der SPECIFIC Klausel angegeben wurde. 8. Der nächste Parameter ist ein Zeiger auf einen Speicherbereich von 70 Characters in dem eine Fehlermeldung abgelegt werden kann. 9. Der nächste Parameter existiert nur, falls die Funktion mit der Option SCRATCHPAD deklariert wurde. Dieser Parameter ist ein Zeiger vom Typ struct sqludf scratchpad* der auf einen Speicherbereich verweist, dessen Inhalt zwischen Funktionsaufrufen erhalten bleibt. Detailiert sieht der Typ folgendermaßen aus: struct sqludf_scratchpad { unsigned long length; /* Laenge des Datenbereichs */ char data[100]; /* initialisiert mit 0 */ }; Die Daten in einem Scratchpad werden nur während der Abarbeitung einer SQL- Anweisung erhalten, nicht zwischen Aufrufen verschiedener SQL-Anweisungen. Falls eine Funktion einer SQL-Anweisung mehrmals (an verschiedenen Stellen) aufgerufen wird, bekommt jede ihr eigenes Scratchpad. 10. Der nächste Parameter (ein Zeiger auf einen Wert vom Typ long) existiert nur, falls die Funktion mit der Option FINAL CALL deklariert wurde. Beim ersten Aufruf ist der Parameter auf -1 gesetzt, beim final call, dem letzten Aufruf nach Beendigung des SQL-Ausdrucks, auf 1. Bei allen anderen Aufrufen ist der Parameter auf 0 gesetzt. Bei der Implementierung einer benutzerdefinierten Funktion sollten folgenden Details beachtet werden: Die Routine sollte ablaufinvariant (reentrant) sein. Falls die Routine dynamisch Speicher allokiert, sollte dieser vor Beendigung wieder freigegeben werden (einzige Ausnahme ist der SCRATCHPAD Speicher). Der Rücksprung aus der Routine sollte mit dem return Befehl durchgeführt werden. Auf keinen Fall sollte mit exit ausgestiegen werden. 49
9 Die Routine sollte nicht versuchen etwas über stdin zu lesen (scanf) oder über stdout auszugeben (printf). Eine benutzerdefinierte Funktion kann mit dem DROP-Kommando wieder gelöscht werden. Dieser Befehl entfernt nur den SQL-Teil der Funktion, die Binärdatei steht weiterhin in dem Verzeichnis in der sie vorher auch stand. Eine Funktion kann nicht gelöscht werden, wenn sie zum Löschzeitpunkt noch in Views, Constraints, Triggern oder als Ursprungsfunktion verwendet wird. Abbildung 24 zeigt die Syntax des DROP-Befehls. Abbildung 24: DROP FUNCTION Anweisung Large Objects Beim Entwurf eines eigenen Datentyps kann es vorkommen, daß keiner der Basistypen geeignet ist, da der eigene Datentyp etwas komplexer aufgebaut ist. Hier kommen die sogenannten Large Objects (LOB) ins Spiel, in denen beliebige Daten (bis zu einer maximalen Speicherobergrenze) gespeichert werden können. Dabei werden drei verschiedene Varianten unterschieden: 1. BLOB (Binary Large OBject): Ein BLOB-Datentyp kann bis zu 2 Gigabyte ( Bytes) an binären Daten speichern. 2. CLOB (Character Large OBject): Ein CLOB-Datentyp kann bis zu 2 Gigabyte an Ein-Byte-Characterdaten speichern (z.b. ASCII). 3. DBCLOB (Double-Byte Character Large OBject): Ein DBCLOB-Datentyp kann bis zu 2 Gigabyte an Zwei-Byte-Characterdaten speichern (z.b. Unicode). Um LOB-Daten in einer Datenbank zu speichern, gibt man als Typ eines Attributs einfach einen der LOB-Datentypen an. Abbildung 25 zeigt, wie man Attribute mit LOB- Datentypen definiert. Bei der Definition eines LOB-Datentyps müssen zwei verschiedene Optionen spezifiziert werden. Einmal muß zwischen LOGGED/NOT LOGGED unterschieden werden. Bei der Standardeinstellung LOGGED werden die Änderungen in diesem Attribut mitprotokolliert. Bei 50
10 Abbildung 25: Definition eines LOB-Attributs der Einstellung NOT LOGGED werden Änderungen nicht mitprotokolliert. Dies ist eine Frage von Performance vs. Sicherheit. Zum anderen muß zwischen COMPACT/NOT COMPACT unterschieden werden. Bei COMPACT nehmen die Daten den kleinstmöglichen Platz auf der Platte ein. Bei NOT COMPACT wird etwas mehr Speicher allokiert, was Updates bei denen das Objekt wächst beschleunigt. Hier ein paar Beispiele für die Verwendung von LOB-Datentypen: CREATE TABLE Phon (Absender Varchar(18), Empfaenger Varchar(18), Ankunft Timestamp, Mitteilung Blob(10M) NOT LOGGED COMPACT); CREATE TABLE Absolvent (Name Varchar(30), MatrNr Integer, Adresse Varchar(150), AkademGrad Varchar(50), Abschluss Date, Bild Blob(500K) NOT LOGGED COMPACT, Arbeit Clob(5M) NOT LOGGED COMPACT); 5.2 Versuch4: Ein eigener Datentyp Laufenlassen des einführendes Beispiels In Ihrem Verzeichnis/auf der Webseite finden Sie die Datei udf.c. Übersetzen Sie dieses Programm mit einem C-Compiler und und binden Sie die Funktion in SQL in ihre Datenbank ein. (Hinweise dazu finden Sie in der Datei READMEUDF.) 51
11 5.2.2 Ein eigener Datentyp Implementieren Sie einen eigenen Datentyp coordinates in dem die Koordinaten eines Ortes abgespeichert werden können. Speichern Sie die Koordinaten in einem Large Object ab. Implementieren Sie für den Umgang mit den Koordinatenobjekten folgende Funktionen: eine Castfunktion double, double coordinates. eine Funktion zur Ausgabe der Koordination, d.h. eine Funktion coordinates char (Beispiel für eine mögliche Ausgabe: N/ W) eine Funktion zur Berechnung von Abständen (Formeln: siehe Embedded SQL-Teil) Kopieren Sie zum Testen der Funktionen die gesamte Relation Stadt um, dabei sollen die Attribute Länge und Breite durch ein Attribut vom Typ coordinates ersetzt werden. 52
12 Literatur [1] D. Chamberlin. Using the New DB2. Morgan Kaufmann, San Francisco, [2] D. Chamberlin. A Complete Guide to DB2. Morgan Kaufmann, San Francisco, [3] M. Morrison, J. Morrison, and A. Keys. Integrating Web Sites and Databases. Communications of the ACM, Vol. 45, No. 9, pp ,
Objektrelationale und erweiterbare Datenbanksysteme
Objektrelationale und erweiterbare Datenbanksysteme Erweiterbarkeit SQL:1999 (Objekt-relationale Modellierung) In der Vorlesung werden nur die Folien 1-12 behandelt. Kapitel 14 1 Konzepte objekt-relationaler
MehrObjektrelationale Datenbanken
Vorlesung Datenbanksysteme vom 26.11.2008 Objektrelationale Datenbanken Konzepte objektrelationaler DBs SQL:1999 OO vs. OR Konzepte objektrelationaler Datenbanken Große Objekte (LOBs: Large Objects) Mengenwertige
Mehr4. Objektrelationales Typsystem
4. Objektrelationales Typsystem Inhalt und Lernziele 4. Objektrelationales Typsystem Inhalt (u.a.): Basisdatentypen Einzigartige Typen (Distinct Types) Kollektionstypen Strukturierte Typen Benutzerdefinierte
MehrSQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99
SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:
Mehr3 Embedded SQL. 3.1 Theorie. 3.1.1 Was ist Embedded SQL?
3 Embedded SQL 3.1 Theorie 3.1.1 Was ist Embedded SQL? Nachdem bisher alle SQL-Anweisungen über den CLP abgewickelt wurden, sollen diese Anweisungen nun in eine Host-Sprache eingebettet werden. Wir werden
Mehr7 Funktionen. 7.1 Definition. Prototyp-Syntax: {Speicherklasse} {Typ} Name ({formale Parameter});
S. d. I.: Programieren in C Folie 7-1 7 Funktionen 7.1 Definition Prototyp-Syntax: Speicherklasse Typ Name (formale Parameter); der Funktions-Prototyp deklariert eine Funktion, d.h. er enthält noch nicht
MehrFunktionen in JavaScript
Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Mithilfe von Funktionen kann man denselben Code von mehreren Stellen des Programms aus aufrufen.
MehrMethoden und Wrapperklassen
Methoden und Wrapperklassen CoMa-Übung IV TU Berlin 06.11.2012 CoMa-Übung IV (TU Berlin) Methoden und Wrapperklassen 06.11.2012 1 / 24 Themen der Übung 1 Methoden 2 Wrapper-Klassen CoMa-Übung IV (TU Berlin)
MehrGrundlagen der OO- Programmierung in C#
Grundlagen der OO- Programmierung in C# Technische Grundlagen 1 Dr. Beatrice Amrhein Überblick Visual Studio: Editor und Debugging Die Datentypen Methoden in C# Die Speicherverwaltung 2 Visual Studio 3
MehrDie Programmiersprache C
Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,
MehrProgrammiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften
Programmiertechnik Teil 4 C++ Funktionen: Prototypen Overloading Parameter C++ Funktionen: Eigenschaften Funktionen (Unterprogramme, Prozeduren) fassen Folgen von Anweisungen zusammen, die immer wieder
Mehr5.1 Mehr Basistypen. (Wie viele Werte kann man mit n Bit darstellen?)
5.1 Mehr Basistypen Außer int, stellt Java weitere Basistypen zur Verfügung. Zu jedem Basistyp gibt es eine Menge möglicher Werte. Jeder Wert eines Basistyps benötigt die gleiche Menge Platz, um ihn im
MehrFunktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion
Überblick über Stored Functions Funktionen Eine Funktion ist ein benannter PL/SQL- Block, der einen Wert zurückgibt. Eine Funktion kann in der Datenbank als Objekt zur wiederholbaren Ausführung gespeichert
MehrIm Folgenden möchten wir Ihnen einige Beispiele aufzeigen, wie ALTER TABLE gemäß SQL92 verwendet wird:
ALTER TABLE BEFEHLE Im Folgenden möchten wir Ihnen einige Beispiele aufzeigen, wie ALTER TABLE gemäß SQL92 verwendet wird: Fügt die Spalte Adresse zur Tabelle Kunden hinzu: ALTER TABLE Kunden ADD COLUMN
MehrProgrammierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
MehrZeiger. C-Kurs 2012, 2. Vorlesung. Tino Kutschbach 10.
Zeiger C-Kurs 2012, 2. Vorlesung Tino Kutschbach tino.kutschbach@campus.tu-berlin.de http://wiki.freitagsrunde.org 10. September 2012 This work is licensed under the Creative Commons Attribution-ShareAlike
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden
MehrWas Mathematiker schon vor Jahrhunderten erfunden haben, gibt es jetzt endlich in ihrer Programmiersprache:
Kapitel 8 Operatoren Was Mathematiker schon vor Jahrhunderten erfunden haben, gibt es jetzt endlich in ihrer Programmiersprache: Operatoren definieren Es ist in C++ möglich, Operatoren wie +, oder für
MehrSQL (Structured Query Language) Schemata Datentypen
2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente
MehrDatenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])
Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs]) Hochschule für Technik, Wirtschaft und Kultur Leipzig 06.06.2008 Datenbanken II,Speicherung und Verarbeitung großer Objekte
MehrSpeicherklassen (1) Lokale Variablen
Speicherklassen (1) Lokale Variablen Lokale Variablen beschränken sich auf die Funktionen, in denen sie definiert werden Sind in der Funktion gekapselt können also nur in der Funktion verändert werden
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C 4 Storage classes Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Compilation units Compilierung eines mehrteiligen Programms:
MehrEinführung in die Programmiersprache C
Einführung in die Programmiersprache C 4 Storage classes Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Compilation units Compilierung eines mehrteiligen Programms:
MehrErzeugung und Veränderung von Tabellen
Datenbanken - Objekte Erzeugung und Veränderung von Tabellen Objekt Tabelle View Sequence Index Synonym Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen
MehrProjekt 3 Variablen und Operatoren
Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.
Mehr4. Objektrelationales Typsystem Kollektionstypen. Nested Table
Nested Table Bei einer Nested Table handelt es sich um eine Tabelle als Attributwert. Im Gegensatz zu Varray gibt es keine Beschränkung bei der Größe. Definition erfolgt auf einem Basistyp, als Basistypen
MehrRelationales Datenbanksystem Oracle
Relationales Datenbanksystem Oracle 1 Relationales Modell Im relationalen Modell wird ein relationales Datenbankschema wie folgt beschrieben: RS = R 1 X 1 SC 1... R n X n SC n SC a a : i=1...n X i B Information
MehrElementare Datentypen in C++
Elementare Datentypen in C++ bool signed/unsigned char signed/unsigned short int signed/unsigned int signed/unsigned long int (signed/unsigned long long int) float double long double void enum char Der
MehrTag 4 Repetitorium Informatik (Java)
Tag 4 Repetitorium Informatik (Java) Dozent: Michael Baer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Arrays (Reihungen)
Mehr3.2 Datentypen und Methoden
Kap03.fm Seite 217 Dienstag, 7. September 2010 1:48 13 3.2 Datentypen und Methoden 217 3.2 Datentypen und Methoden Wie bei vielen höheren Programmiersprachen gibt es auch in Java einfache und strukturierte
MehrJAVA-Datentypen und deren Wertebereich
Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).
Mehrids-system GmbH Tipp #3 Leer-Strings in SQL oder die Frage nach CHAR oder VARCHAR
ids-system GmbH Tipp #3 Leer-Strings in SQL oder die Frage Zusammenfassung Dieses Dokument beschreibt die Unterschiede zwischen CHAR und VARCHAR Datentyp sowie die Behandlung im SQL Michael Tiefenbacher
MehrJava Einführung VARIABLEN und DATENTYPEN Kapitel 2
Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen
MehrHydroinformatik I: Referenzen und Zeiger
Hydroinformatik I: Referenzen und Zeiger Prof. Dr.-Ing. habil. Olaf Kolditz 1 Helmholtz Centre for Environmental Research UFZ, Leipzig 2 Technische Universität Dresden TUD, Dresden Dresden, 06. Januar
MehrVererbung und Polymorphie
Vererbung und Polymorphie Marc Satkowski, Sascha Peukert 29. September 2016 C# Kurs Gliederung 1. Methodenüberladung 2. Vererbung Polymorphie Methoden- & Eigenschaftsüberschreibung Weitere Schlüsselwörter
MehrDatenbank und Tabelle mit SQL erstellen
Datenbank und Tabelle mit SQL erstellen 1) Übung stat Mit dem folgenden Befehlen legt man die Datenbank stat an und in dieser die Tabelle data1 : CREATE DATABASE stat; USE stat; CREATE TABLE data1 ( `id`
MehrF Zeiger, Felder und Strukturen in C
F Zeiger, Felder und Strukturen in C F Zeiger, Felder und Strukturen in C F.1 Zeiger(-Variablen) 1 Einordnung Konstante: Bezeichnung für einen Wert a 0110 0001 Variable: Bezeichnung eines Datenobjekts
MehrFunktionen in JavaScript
Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Es können ganze Programmteile aufgenommen werden. Mithilfe von Funktionen kann man denselben
MehrEinführung in die Programmierung II. 5. Zeiger
Einführung in die Programmierung II 5. Zeiger Thomas Huckle, Stefan Zimmer 16. 5. 2007-1- Bezüge als Objekte Bisher kennen wir als Bezüge (Lvalues) nur Variablennamen Jetzt kommt eine neue Sorte dazu,
MehrVorlesung. Grundlagen betrieblicher Informationssysteme. Prof. Dr. Hans Czap. Email: Hans.Czap@uni-trier.de. Lehrstuhl für Wirtschaftsinformatik I
Vorlesung Grundlagen betrieblicher Informationssysteme Prof. Dr. Hans Czap Email: Hans.Czap@uni-trier.de - II - 1 - Inhalt Kap. 1 Ziele der Datenbanktheorie Kap. 2 Datenmodellierung und Datenbankentwurf
MehrThemen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen
Themen der Übung 1 Organisatorisches Methoden und Wrapperklassen 2 Methoden 3 Wrapper-Klassen CoMa-Übung IV TU Berlin 07.11.2012 Organisatorisches: Im Pool nur auf die Abgabeliste setzen, wenn ihr wirklich
MehrEinstieg in die Informatik mit Java
1 / 27 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick: Klassen als Datenstruktur 2 Vereinbarung
MehrProgrammierkurs C++ Variablen und Datentypen
Programmierkurs C++ Variablen und Datentypen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Überblick Welche Datentypen gibt es in
MehrInstitut für Informatik
Technische Universität München Institut für Informatik Lehrstuhl für Computer Graphik & Visualisierung WS 2010 Praktikum: Grundlagen der Programmierung Lösungsblatt 4 Prof. R. Westermann, A. Lehmann, R.
MehrInstitut für Informatik
Technische Universität München Institut für Informatik Lehrstuhl für Computer Graphik & Visualisierung WS 2010 Praktikum: Grundlagen der Programmierung Aufgabenblatt 4 Prof. R. Westermann, A. Lehmann,
MehrDatenbanken. 5 Tabellen. Karl Meier karl.meier@kasec.ch 12.10.2010. Inhalt. Domänen verwenden Tabellen anzeigen, ändern, löschen Übung
Datenbanken 5 Tabellen Karl Meier karl.meier@kasec.ch 12.10.2010 Tabellen erstellen en Integritätsregeln Inhalt Domänen verwenden Tabellen anzeigen, ändern, löschen Übung 2 1 Einfache Tabellen erstellen
MehrStrukturierte Objekttypen
Strukturierte Objekttypen Der Typ t approxmatch row des letzten Beispiels ist ein sogenannter Objekttyp. Definition: Ein Objekttyp ist ein Datentyp, bei dem (u.u. verschiedene) bekannte Datentypen zu einem
MehrDie Programmiersprache C99: Zusammenfassung
Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 7. Funktionen Einleitung Nach dem Prinzip Divide and Conquer bietet es sich an, größere Aufgaben in kleinere Teile zu unterteilen. Anweisungsblöcke,
MehrÜbersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
MehrDatenmodelle und Datenbanken 2
Datenmodelle und Datenbanken 2 Prof. N. Fuhr Institut für Informatik und Interaktive Systeme Arbeitsgruppe Informationssysteme 24. Februar 2005 Hinweise zur Bearbeitung Die Zeit läuft erst, wenn Sie alle
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
MehrSQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar
Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-
MehrC++ Teil 5. Sven Groß. 13. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 18
C++ Teil 5 Sven Groß 13. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 13. Mai 2016 1 / 18 Themen der letzten Vorlesung Funktionen Funktionsüberladung, Signatur Rekursion const-deklaration Referenzen
MehrUni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr
Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale
MehrC++ - Objektorientierte Programmierung Konstante und statische Elemente
C++ - Objektorientierte Programmierung Konstante und statische Elemente hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja
MehrUser Defined Functions im DB2
User Defined Functions im DB2 von Rosmarie Peter, Trivadis AG User Defined Functions (UDFs) gestatten es, eigene Funktionen zu schreiben, die in SQL-Statements verwendet werden können. In diesem Artikel
Mehr7. Übung Informatik II - Objektorientierte Programmierung
7. Übung Informatik II - Objektorientierte Programmierung 29. Mai 2015 Inhalt 1 2 3 Übersicht 1 2 3 Idee Menschen nehmen die Welt in Form von Objekten wahr manche Objekte haben gleiche Eigenschaften, hierüber
MehrÜbungspaket 29 Dynamische Speicherverwaltung: malloc() und free()
Übungspaket 29 Dynamische Speicherverwaltung malloc() und free() Übungsziele Skript In diesem Übungspaket üben wir das dynamische Alloziieren 1. und Freigeben von Speicherbereichen 2. von Zeichenketten
MehrEs geht also um die sogenannte SQL- Data Definition Language.
In diesem Abschnitt werden wir uns die SQL Befehle ansehen, mit denen ein sogenanntes Datenbankschema angelegt, gepflegt und auch wieder gelöscht werden kann. Es geht also um die sogenannte SQL- Data Definition
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
MehrKapitel 9. Embedded SQL. Prof. Dr. Wolfgang Weber Vorlesung Datenbanken 1
Kapitel 9 Embedded SQL Vorlesung Datenbanken 1 Embedded SQL (siehe auch [Date00]) Arbeitsweise ähnlich PL/SQL, allerdings: Normale Programmiersprache mit eingestreuten SQL-Befehlen und anderen Befehlen
Mehr1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r
1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen
Mehr1. Referenzdatentypen: Felder und Strings
1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen
MehrKlassen als Datenstrukturen
Einstieg in die Informatik mit Java, Vorlesung vom 27.11.07 Übersicht 1 Klassen als Datenstruktur 2 Vereinbarung von Klassen 3 Erzeugen von Objekten - Instanzen einer Klasse 4 Zugriff auf Attribute 5 Initialisierung
MehrEinführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher
Einführung in die Programmierung zusammengesetzte Datentypen, dynamischer Speicher Arvid Terzibaschian 1 Zusammengesetzte Datentypen 2 Wozu zusammengesetzte Datentypen? Anforderung: Sie sollen ein Kundenverzeichnis
MehrRelationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL
Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene
MehrDie einfachsten Anweisungen
2 Die einfachsten Anweisungen 2-1 Inhalt Die einfachsten Anweisungen Einführung Datentypen Arithmetische Operatoren Mathematische Funktionen Mehrfache Zuweisungen Übungsaufgaben Einführung Wir wollen unser
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrC-Programmierung: Ausdrücke und Operatoren#Division.2F
C-Programmierung: Ausdrücke und Operatoren#Division.2F http://de.wikibooks.org/wiki/c-programmierung:_ausdrücke_und_operatoren#division_.2f This Book Is Generated By Wb2PDF using RenderX XEP, XML to PDF
MehrEinführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)
Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data
MehrDatenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin
Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,
MehrGrundlagen der Programmierung in C++ Arrays und Strings, Teil 1
Grundlagen der Programmierung in C++ Arrays und Strings, Teil 1 Wintersemester 2005/2006 G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Das C++ Typsystem simple structured integral enum
MehrSQL,Teil 1: CREATE, INSERT, UPDATE, DELETE, DROP
SQL,Teil 1: CREATE, INSERT, UPDATE, DELETE, DROP W. Spiegel Übersicht DDL & DML Relationen definieren: CREATE Primärschlüssel setzen mit primary key Tabellen löschen: DROP Daten speichern: INSERT Daten
Mehr10 Die Programmiersprache C99: Zusammenfassung
10 Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 25. September 2014, 18:40 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html
MehrSQL. Datendefinition
SQL Datendefinition Die Organisation einer Datenbank basiert auf einer Anzahl verschiedener Objekte. Diese können physikalischer oder logischer Natur sein. Das folgende Kapitel beschäftigt sich mit der
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 3. Grunddatentypen, Ausdrücke und Variable
1 Kapitel 3 Grunddatentypen, Ausdrücke und Variable 2 Eine Datenstruktur besteht aus Grunddatentypen in Java einer Menge von Daten (Werten) charakteristischen Operationen Datenstrukturen werden mit einem
MehrEinführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
MehrDatenbanksysteme I Datenbankprogrammierung. 15.6.2009 Felix Naumann
Datenbanksysteme I Datenbankprogrammierung 15.6.2009 Felix Naumann SQL mit einer Programmiersprache verbinden 2 Embedded SQL Kombiniert SQL mit 7 Programmiersprachen ADA, C, Cobol, Fortran, M, Pascal,
Mehr6. Zeiger Allgemeines Definition eines Zeigers
6. Zeiger www.c-programme.de Stefan Thiemert Kapitel 6 - Seite 1 von 6 6. 1. Allgemeines Zeiger spielen in der Programmierung eine wichtige Rolle. Sie sind wichtig, bei der Arbeit mit Arrays und Funktionen.
MehrMySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.
MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt
MehrEinstieg in die Informatik mit Java
1 / 24 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Klassen als Datenstruktur 2 Vereinbarung von
Mehr1 Klassen und Objekte
1 Klassen und Objekte Datentyp - Spezifikation des Typs von Datenobjekten Datenstruktur - logische Ordnung von Elementen eines Datentyps - zur (effizienten) Speicherung, Verwaltung, Zugriff - auf die Elemente
MehrC++ - Objektorientierte Programmierung Konstruktoren und Destruktoren
C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue
MehrGI Vektoren
Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung
Mehr4. Datenbanksprache SQL
4. Datenbanksprache SQL Standard-Sprache für das Arbeiten mit relationalen Datenbanken: Structured Query Language Datendefinition: Anlegen, Ändern und Löschen von Datenbankstrukturen Datenmanipulation:
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 9. Zeiger Arbeitsspeicher / Adressen Der Arbeitsspeicher des Computers (RAM) besteht aus einem Feld von Speicherzellen, beginnend bei Adresse
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
MehrTag 4 Repetitorium Informatik (Java)
Tag 4 Repetitorium Informatik (Java) Dozent: Patrick Kreutzer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!
Mehr5.4 Klassen und Objekte
5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen
MehrTyp : void* aktuelle Parameter Pointer von beliebigem Typ
2. Funktionen - Prototypvereinbarung typangabe funktionsname(parameterliste); - Funktionsdefinition typ funktionsname(parameterliste){ Anweisung - Funktionstyp -> Typ der Funktionswertes zulaessige Typangaben
MehrC++ - Funktionen und mehr -
C++ - Funktionen und mehr - Friedrich-Schiller-Universität Jena Kerstin Gößner und Ralf Wondratschek Prof. Dr. habil. Wolfram Amme Dipl.-Inf. Thomas Heinze Inhaltsverzeichnis 1 Einleitung 3 2 Deklaration,
MehrIm Windows Betriebssystem sind Dateien eindeutig gekennzeichnet durch ihren Pfad, Dateinamen und nach einem Punkt die Dateierweiterung.
Dateioperationen Seite 1 von 12 Im Windows Betriebssystem sind Dateien eindeutig gekennzeichnet durch ihren Pfad, Dateinamen und nach einem Punkt die Dateierweiterung. z.b.: c:\testdateien\text.dat //Datendatei
MehrDATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER
DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.
MehrDatenstrukturen, Alignment Stack Prozeduraufruf, Parameterübergabe und -rückgabe (Calling Conventions) Leaf procedures
Vorbesprechung U8 Datenstrukturen, Alignment Stack Prozeduraufruf, Parameterübergabe und -rückgabe (Calling Conventions) Leaf procedures Basistypen Alignment der Basistypen auf deren Grösse Grössen (abhängig
MehrDAP2 Praktikum Blatt 1
Fakultät für Informatik Lehrstuhl 11 / Algorithm Engineering Prof. Dr. Petra Mutzel, Carsten Gutwenger Sommersemester 2009 DAP2 Praktikum Blatt 1 Ausgabe: 21. April Abgabe: 22. 24. April Kurzaufgabe 1.1
MehrC++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)
Mehr3. Erweiterbarkeit von Datenbanksystemen
3. Erweiterbarkeit von Datenbanksystemen Allgemeine Aspekte der Erweiterbarkeit 3. Erweiterbarkeit von Datenbanksystemen Kritik an traditionellen DB-Systemen: Armut an Datentypen und Funktionen Datenbankanwendungen
Mehr