User:StanfordPioneers
Jump to navigation
Jump to search
Student FAQ - db-class.org (Introduction to Databases)[edit | edit source]
This FAQ is maintained by and for students of db-class: Introduction to Databases, taught by Stanford Professor Jennifer Widom, Fall 2011, mirroring the offline Stanford University CS145 class.
To learn more about Professor Widom, you can read this interview with distinguished members of the database community, look her up on wikipedia or visit her home page.
Registration not mandatory. Any edits without registering will record the IP address.
General Tips[edit | edit source]
Q&A Forum[edit | edit source]
- How to post a clickable link
$$\href{http://en.wikibooks.org/w/index.php?title=User:StanfordPioneers}{Student FAQ}$$
Week 1 - Relational Algebra[edit | edit source]
Tools[edit | edit source]
- Relational Algebra Interpreter - Same as used in the workbench in the exercises
Advanced topics beyond db-class[edit | edit source]
- Relational Division
- Description from Wikipedia - general definition
- Relational Division (PDF) - more details, including conversion to SQL, which helps on one of the RA exercises.
- CS145 class activity for multiset relational algebra (PDF), solution
Week 2 - SQL[edit | edit source]
Tools[edit | edit source]
- Database Master (used by Prof. Widom) (Windows only, 30-day trial, then limited freeware)
- Orbada (cross-platform Java, open-source, MySQL, SQLite, ...), download SQLite JDBC driver separately (Suits users with considerable experience .. not recommended for newbies.)
- SQLite Manager (Firefox add-on, open-source)
- Navicat (Free 30-day trial, three platforms - Microsoft Windows, Mac OS X and Linux.)
Week 3 - Relational Design Theory[edit | edit source]
Tools[edit | edit source]
Functional Dependency[edit | edit source]
- How to solve FD problems via FD diagram (Yong), source of diagram concept
- Functional Dependencies 3rd-party video explanation
- Functional Dependencies - minimal keys (Yong)
Inference Rules & Equivalence[edit | edit source]
External References[edit | edit source]
Closure of Attributes & Minimal/Candidate Keys[edit | edit source]
- Computing a closure of attributes - example
- Computing a key, once you know how to compute closures (Huy)
Multivalued Dependency[edit | edit source]
External link
Inference Rules[edit | edit source]
Normalization[edit | edit source]
Beyond db-class[edit | edit source]
- Example of relations meeting 3NF but not BCNF
- Normalization example poster for 1NF, 2NF, 3NF, 4NF & 5NF
- Wikibooks Relational Database Design: Normalization -- Wikibooks has a Relational Database Design Book, There is a section on Normalization which seems relevant, but probably could stand some review by those more familiar with the topic.
Week 4 - Querying XML[edit | edit source]
Tools[edit | edit source]
- Kernow (used by Prof. Widom) (cross-platform Java, open-source), (obtaining a license key - mention you're a student)
- Kernow 1.6.1 (This older version gives you element-query results on separate lines instead of one long line.)
XPath, XQuery[edit | edit source]
- The 'count' function in XQuery You can use 'avg' the same way.
- Useful FLWOR examples
Reading. xquery Book Authors site. Available on Amazon etc.
xpath, xslt. Almost a reference book (XSLT 2.0) Mike Kays book Mike is the W3C rec editor, long time mailing list supporter.
Beyond db-class[edit | edit source]
- XML - Attributes versus Elements
UML and conversion to DB model[edit | edit source]
External Resources
Transactions and Isolation Levels[edit | edit source]
Phantom Tuples