User:Cassem32/sandbox

Introduction
This module is all about databases, what they are, how to use them. Databases are a way to store large amounts of digital information efficiently and allows one to retrieve that data quickly and accurately. To accomplish this Databases were initially designed in a hierarchical model, however this model may have redundancy which adds to search times and size of the database. Obviously having redundant data isn't optimal, thus the relational model was created. The relational model removes redundancy by different tables of data related to each other. For instance in the relational picture linked the table with the ISBN is the main table and the publisher and author tables have relations formed to it. Each ISBN is unique(meaning all ISBN's are different) but different ISBN's might be published by the same publisher, written by the same author or both. Databases are extremely useful and often taken for granted; databases allow us to login into facebook, browse through youtube and look up information on google. Chances are if you use the internet you will encounter many databases processing your query in the background. The following information is basic and some more advanced material in learning about different databases(mySQL, Microsoft Access, ect.) and how to use them. The links below will also dive into basic SQL(Structured Query Language) and how to build tables and SQL instructions to add, display or modify those tables.

Journals
This link takes you to an article outlining everything you need to know about databases. It explains very early concepts of a database, the library, and in the digital age the need for a computerized way of storing large amounts of information in a standardized way to be able to retrieve it quickly and accurately. This is all on the first page, on the subsequent pages the author describes different database models(i.e, Hierarchical, network, relational).

This link takes you to an article explaining the basics of SQL (Structured query language) used to retrieve, modify, insert or remove data from a database.

Videos
This video explains the basics in designing a database and how to actually make one using Microsoft Access. Recommended to watch all five videos as they are just a continuation of the tutorial.

This video explains the basics in creating a database with Microsoft SQL Server 2008 Management Studio. This example provides a good practice with SQL on building tables, having constraints on data(i.e no negative numbers can be in the "cost" column), inserting data and displaying a table.

This video is a bit more advanced with selecting data and manipulating it to create a new table with relevant information.

Hands On Activites
This link allows you to build your own SQL statements using a preexisting database.

This link is an interactive SQL statement interpreter. It provides examples of various instructions and has you use them in different circumstances.

External Experts
Samuel Madden is a professor at MIT whose expertise and research is in database systems

Michael Stonebraker is a professor at MIT whose expertise and research interest is in database systems.

ASU Experts
Kasim Candan is a professor at ASU whose expertise is in Database systems; Multimedia, Web, and Enterprise data management.

Yi Chen is an associate professor at ASU whose expertise and research interests include XML data storage, indexing, query processing and optimization techniques for databases and streams.

Wiki Links
Database

Relational Model

Hierarchical Model

SQL

MySQL

Sites
This site a good all around learning tool for SQL and related languages

Open Courseware from MIT covering the basic/moderate level of databases. Includes readings, assignments and exams with posted solutions.