2. Vier Erfolgskriterien
dieses Vortrages
Datenbanken machen Spaß
- intellektuell, „Schönheit“ Sie hören zu
- Verhältnis Theorie / Praxis
- Geschäftsmöglichkeiten Nach dem Vortrag
- Twitter-Follower
Umfeld verstanden @kajarno @mysql
- Betriebssystem, Hardware @mysql_community
- Cache, NoSQL, - kaj.arno. /slideshare
Zusatzwerkzeuge Vortrag downloaden
- Entwicklungswerkzeuge - MySQL 5.1 installieren
3. Der Inhalt
meines Gastvortrages
Kommentar zum Bisherigen
Datenbankdesign, das relationale
MySQL-
Modell, Optimierungen, funktionale Schulung
Abhängigkeit, Foreign Keys, 3NF,
Transaktionen, Concurrency, Constraints, Ihre Fragen
Triggers, Stored Procedures -- und
was beim bisherigen Fehlt Beispiele
- kajtajm Zeitbuchung
Community, Business - kajbook Buchhaltung
- Benutzergemeinde - Praktische (oder
- Geschäftsmodell theoretische?) Fragen
4. Ihr Referent
des Tages
ORCL
Dipl.-Ing. TU Helsinki CIC aber noch kein LEC
1981-88 Monty, Mårten / Physik
3.76.140 Databassystem Sun 2008-10
FOCUS 4GL neben Studium MySQL Ambassador to Sun
VP Community Rel.
Polycon Ab 1987-2001 ->
Schulung, Beratung MySQL AB 2001-8
„Solution Provider“ VP Training, VP Services
Focus, VB, KBMS, Delphi, PHP VP Engineering, CIO
DB2, MS SQL, Interbase, MySQL VP Community Relations
5. Das Bisherige
in Ihrem DB-Kurs
Datenbankdesign,
das relationale Modell,
Optimierungen,
funktionale Abhängigkeit
Foreign Keys,
3NF,
Transaktionen,
Concurrency,
Constraints,
Triggers
6. Was in Ihrem
DB-Kurs fehlt
Vendor lock-in
Prototyping
Stored Procedures
Verhältnis Datenbank -
Entwicklungswerkzeug
Object-Relational Mapping
Vorbauten wie memcached
Sicherheitsfragen, SQL Injections
Optimierungen der
Gesamtanwendung
16. Als Sun MySQL AB
gekauft hat haben 70 %
der 450 Angestellten
von zu Hause aus
in 110 Orten
in 30 Ländern
und 18 Zeitzonen
gearbeitet
17. Datenbankdesign
Wichtig für alle
Eine Kunst ...
... und eine Wissenschaft
Bedürfnisse verstehen
Logisch knapp ausdrücken
können
Anforderungen de nieren
Anwendung verstehen
Redundanz: Jain
Ef zienz: Jain, auch
18. CREATE TABLE kajbookrow (
Entity char(10) NOT NULL,
Period char(5) NOT NULL,
KajDate date NOT NULL,
AutoIncr int NOT NULL AUTO_INCREMENT,
PairAutoIncr int,
Account smallint,
PairAccount smallint,
Amount decimal(9,2),
KajText varchar(50),
Keyword varchar(10),
PRIMARY KEY (Entity, Period, Kajdate, AutoIncr));
19. CREATE TABLE account (
Entity char(10) NOT NULL, -- juridisk person
Period char(5) NOT NULL,
-- 1002E 1001B 1012A
Account smallint, -- 1000 to 9999
AcctText char(30),
AcctShortText char(10),
AcctType char(1),
-- 1 Aktiva 2 Passiva 3 Inkomst 4- Utgift
PRIMARY KEY (Entity, Period, Account));
20. CREATE TABLE rptrow (
-- for complex financial reports, e.g. balance sheet
RptName char(10),
-- As descriptive as it gets in 10 chars
RptRowNo smallint, -- hardly >255 rows but still
RptRowText char(30),
AcctWhere char(50),
-- WHERE clause for Account
AcctFormula char(50),
-- for later: Formula involving rows
PRIMARY KEY (RptName, RptRowNo));
21. Zum
Überlegen
• Benutzerbedarf
• Datenintegrität
• Theoretische
Sauberkeit
• Praktische
Anwendbarkeit
• Abhängigkeit von
Datenbanken,
Programmiersprachen,
Betriebssystemen