MySQL.

Slides:



Advertisements
Ähnliche Präsentationen
Object Relational Mapping
Advertisements

ER-Datenmodell und Abfragen in SQL
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Relationale Datenbank MySQL
System J – Compiler – Praktikum: Datenbanksystementwicklung Knut Stolze
Dynamische Seiten mit Dreamweaver Zugriff auf (mysql) Datenbank mit PHP.
Home Page: nanoworld news? Redaktion Berichte --> Agenda Personen aktualisieren abstracts mit 10 Zeilen Sitemap Forum Suche.
Allgemeine Technologien II
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
XINDICE The Apache XML Project Name: Jacqueline Langhorst
SQL als Abfragesprache
SQL als Abfragesprache
Datensicherheit in DBMS
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
SQL/XML. © Prof. T. Kudraß, HTWK Leipzig 2 2 Motivation Speicherung von XML in allen großen kommerziellen DBMS vorhanden proprietäre Lösungen für die.
Text-Retrieval mit Oracle Vortrag von Andreas Mück & David Diestel.
Otto-von-Guericke-Universität Magdeburg Gamal Kassem 1 Tabellenzeile mit READ lesen READ TABLE itab INDEX idx READ TABLE itab WITH KEY comp1 = f1.... Compn.
Datenintegrität Referentielle Integrität create table
Oracle interMedia Image
JDBC -Java Database Connectivity-. 15./22. April 2004JDBC2 JDBC.... verbindet Java-Programme mit SQL-basierten Datenbanken.. liefert eine generische SQL-API.
Datenbanken 13: Objekt-Klasse-Datenbank
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Erhard Künzel für Info 9. Klasse: digitale-schule-bayern.de © Erhard Künzel.
Datenbanken 10: Einfügen, Ändern, Löschen
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern © Erhard Künzel.
Einführung MySQL mit PHP
Prof. K. Gremminger Folie 1 Vorlesung Datenbanksysteme SS 2002 Cursor-Konzept u Zugriff auf Mengen von Ergebnistupeln u In SQLJ Iteratoren u Vergleichbar.
2.2 Definition eines Datenbankschemas (SQL-DDL)
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
JDBC: JAVA Database Connectivity
objekt-relationale Datenbanken
SQL-Tutorium Ernst Rodlmayr.
Datenbankentwicklung IV-LK
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Relationale Datenbanken III
O.Univ.-Prof. Dr. Dimitris Karagiannis Datenbanken administrieren mit phpMyAdmin Martin Marinschek
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
Folgendes kann missbraucht werden: formulare unverschlüsselte login-informationen ungeschützte includes SQL-injection reto ambühler
JDBC (Java DataBase Connectivity)
Datenbanksysteme für hörer anderer Fachrichtungen
Einführung in Datenbankmodellierung und SQL
verstehen planen bearbeiten
PL/SQL - Kurze Einführung April 2003Übung Data Warehousing: PL/SQL 2 PL/SQL.. ist eine Oracle-eigene, prozedurale Programmiersprache Sämtliche.
Webseiten mit PHP, SQL, XML und Webservices Anhand praktischer Beispiele.
Internet Praktikum Aufgabe Kopieren Sie die bitte das von Ihnen erstellte Kino-Projekt in Ihr Gruppenverzeichnis auf den HTTP-Server. \\SERVER1\VWA??\
Datenbankanbindung mit
Erstellung eines Newsletters
Structured Query Language
Artikelanzeige (klein) show_article_short(article_id) Bild Artikel Name Beschreibung ….. …. Preis Bild Artikel Name Beschreibung ….. Gewicht Preis Verfügbarkeit.
Termin Festlegung Einführung MySQL Runterladen MySQL, Pentaho Design Studio Betrachtung Pentaho
Quelle: xkcd.com SQL Injections.
11 Zugriffskontrolle (Access Control) Ziele Privilegien Rollen GRANT und REVOKE Befehl Privilegien Rollen GRANT und REVOKE Befehl.
Prolog: Datenbanken Inhalt - Überblick - Erstellen einer Datenbank
Dynamische Webseiten mit MySql und PHP
Datenbank für Skriptenverkauf
PHPmyadmin Maya Kindler 6c.
Datenbanken erstellen mit PostgreSQL
Datenbanken abfragen mit SQL
SQL Lutz KleinostendarpJOBELMANN-SCHULE Datendefinition Die Organisation einer Datenbank basiert auf einer Anzahl verschiedener Objekte. Diese können physikalischer.
By Thorsten Zisler 1 SQL Datenbank Anbindung an den Supervisor.
Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
PHP Schulung Beginner Newthinking Store GmbH Manuel Blechschmidt.
SQL Structured Query Language Enzio Thiem. INHALT CREATE TABLE Anweisung Gängige Datentypen Beispiel CREATE TABLE Beispiel CREATE TABLE - erweitert Beispiel.
GUI lokaler Speicher Datenbank
Sprachumfang von SQL Vier Kategorien DDL (Data Definition Language)
Abfragesprache SQL in ORACLE
Create Table, Rechte und Rollen
SQL Join.
(Structured Query Language)
 Präsentation transkript:

MySQL

relationale Datenbanken SQL : Sprache fuer relationale Datenbanken. jede Information nur einmal gepeichert Dazu macht man mehrere Tabellen, die alle ueber Schluessel miteinander verknuepft sind. Bsp. Projektpartner, Versuchsteilnehmer, ganze Schulklasssen, etc. Bei Versuch z.B. nur Id-Nr. der Schlusklasse eintragen. Daraus auf Schüler-Id und daraus auf e-mail Liste schliessen.

Normalisierung Ein Datenbankkonzept, das alle Bedinungen fuer Konsistenz erfuellt, nennt man normalisiert. In der Literatur sind Konzepte zur Normalisierung fuer Datenbankentwuerfe zu finden.

Benutzerrechte Rechte auf verschiedenen Stufen: Servers, Datenbank, Tabelle, Kolonnen verschiedene Rechte z.B.: Datensatz suchen, einfuegen, loschen, ändern SQL-Befehl grant.

Client Ansteuerung der DB über Client, der SQL-Befehle übergibt Bsp: update nanoworld.partners set vorname = 'Dino' where login = 'dino'; select ident, vorname, nachname, login, email from nanoworld.partners where mailinglist = 'y';

Beispiel create table Personen( id int not null primary key auto_increment, vorname varchar(30), nachname varchar(30), mailinglist enum('y','n'), ... PLZ smallint );

Zope - MySQL Z MySQL Database Connection einfuegen Datenbase Conection String: database[@host[:port]] [user [password [unix_socket]]] In unserem Fall: personen@localhost homepage homepassw /tmp/mysql.sock

Z SQL Methoden Die DB steuert man mit Z SQL Methoden an: SQL-Befehl darf dtml-tags enthalten Parameter können verlangt werden Rückgabe: Liste von Objekten, die als Attribute die gefragten Feldnamen enthält. Zugriff: über <dtml-in sql_Methoden_Name> <dtml-var Feldname>

Interface für Partner Datenbank: nanoworld.partners

Ablauf: Verzeichnis anmeldung:

anmeldung.index_html

anmeldung/formular

anmeldung/report

/anmeldung/index_html <FORM NAME="email" METHOD="POST" onReset="history.back()" ACTION="formular"> Bitte geben sie Ihre e-mail Adresse an: <INPUT TYPE=TEXT NAME="email" SIZE=30 MAXLENGTH=30> <INPUT TYPE="submit" VALUE="Submit"> <INPUT TYPE="reset" VALUE="Abbrechen">

anmeldung/formular Uberprüfung <dtml-if Cemail> <dtml-call "REQUEST.set('fehler','Sie sind bei uns schon angemeldet.')"> </dtml-if>

Cemail Z SQL Methode

anmeldung/formular Formular <FORM NAME="formular" METHOD="POST" onReset="history.back()" action="report"> Anrede: <input type="text" name="anrede" value="" size=20 maxlength=20> …. <INPUT TYPE="hidden" NAME="email" VALUE="<dtml-var "_.string.lower(email)">" >

anmeldung/report Diverser Überprufungen Willkommen <dtml-var "REQUEST.get('anrede')"> <dtml-var"REQUEST.get('nachname')"><br> <dtml-call Insert_Person_MySQL> <dtml-call benachrichtigen>

Insert_Person_MySQL Insert into partners (vorname, nachname, login, passwort, email, mailinglist,strasse,nr,ort,plz,land,position,sprache,anrede ) values ( <dtml-sqlvar vorname type="string" optional>, <dtml-sqlvar nachname type="string" optional>, … )

benachrichtigen <dtml-sendmail mailhost="an_guggi"> To: martin.guggisberg@unibas.ch From: nanopartners.anmeldung Subject: Partner hat sich angemeldet Angemeldet hat sich <dtml-in Abfrage> <dtml-var Field> <dtml-var expr="_.getitem(Field)"> </dtml-in> </dtml-sendmail>

login/index_html

/login/report

auswahl

Bearbeiten

Abmelden

Abgmeldet

anmeldung/index_html

anmeldung/formular

anmeldung/report

Ablauf

login/index_html <form action="report" method="post"> Login:<input type="text" name="login"><br> Passwort:<input type="password" name="passwort"><br> <INPUT TYPE="submit" NAME="submit" VALUE="Submit"> <INPUT TYPE="submit" NAME="submit" VALUE="Passwort vergessen"> </form>

login/report <dtml-in Ueberpruefen size=1> <dtml-in "Personendaten(ident=ident)"> Login erfolgreich.<br> Willkommen <dtml-var anrede> <dtml-var nachname> <form action="../auswahl" onReset="history.back()"> ...

/bearbeiten/bearbeiten Parameter: ident <dtml-in Personendaten> <dtml-in Abfrage> <dtml-var "_.string.capitalize(Field)“> <dtml-if "Type[0]=='v'"> <INPUT TYPE=TEXT NAME="<dtml-var Field>" VALUE="<dtml-var expr="_.getitem(Field,1)">" SIZE=<dtml-var "Type[8:_.string.find(Type,')')]"> MAXLENGTH=<dtml-var "Type[8:_.string.find(Type,')')]"> >

Personendaten Parameter: ident Select * from nanoworld.partners where ident=<dtml-sqlvar ident type="int">

Abfrage show columns from nanoworld.partners

bestaetige_bearbeiten div. Überprüfungen Aenderungen gespeichert: <form action="../auswahl"> <input type="submit" value="OK"> <input type="hidden" value="<dtml-var ident>" name="ident"> </form><br> <dtml-call Update_Person_MySQL>

abmeldung/abmelden Wollen Sie sich sicher abmelden? <form action="abgemeldet“ onReset="history.back()"> <input type="submit" value="OK"> <input type="reset" value="Abbrechen"> <INPUT TYPE="hidden" NAME="ident" VALUE="<dtml-var ident>" > </form>

abgemeldet Auf Wiedersehen!<br> Sie wurden abgemeldet. <form action="../anmeldung"> <input type="submit" value="OK"> </form><br> <dtml-call Abmelden>

Abmelden Parameter: ident delete from nanoworld.partners where ident=<dtml-sqlvar ident type="int">