* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download sql design
Survey
Document related concepts
Tandem Computers wikipedia , lookup
Relational algebra wikipedia , lookup
Microsoft Access wikipedia , lookup
Oracle Database wikipedia , lookup
Concurrency control wikipedia , lookup
Extensible Storage Engine wikipedia , lookup
Functional Database Model wikipedia , lookup
Entity–attribute–value model wikipedia , lookup
Ingres (database) wikipedia , lookup
Microsoft Jet Database Engine wikipedia , lookup
Clusterpoint wikipedia , lookup
Microsoft SQL Server wikipedia , lookup
Open Database Connectivity wikipedia , lookup
Database model wikipedia , lookup
Transcript
Design and Implementation CIS 400 Final Project Dr. Bruce Maxim Brad Lloyd & Michelle Zukowski 1 An Overview of SQL • SQL stands for Structured Query Language. • It is the most commonly used relational database language today. • SQL works with a variety of different fourthgeneration (4GL) programming languages, such as Visual Basic. Brad Lloyd & Michelle Zukowski 2 SQL is used for: • Data Manipulation • Data Definition • Data Administration • All are expressed as an SQL statement or command. Brad Lloyd & Michelle Zukowski 3 SQL Requirements • SQL Must be embedded in a programming language, or used with a 4GL like VB • SQL is a free form language so there is no limit to the the number of words per line or fixed line break. Not all versions are case sensitive! • Syntax statements, words or phrases are always in lower case; keywords are in uppercase. Brad Lloyd & Michelle Zukowski 4 SQL is a Relational Database A Fully Relational Database Management System must: • Represent all info in database as tables • Keep logical representation of data independent from its physical storage characteristics • Use one high-level language for structuring, querying, and changing info in the database • Support the main relational operations • Support alternate ways of looking at data in tables • Provide a method for differentiating between unknown values and nulls (zero or blank) • Support Mechanisms for integrity, authorization, transactions, and recovery Brad Lloyd & Michelle Zukowski 5 SQL Design • SQL represents all information in the form of tables • Supports three relational operations: selection, projection, and join. These are for specifying exactly what data you want to display or use • SQL is used for data manipulation, definition and administration Brad Lloyd & Michelle Zukowski 6 Table Design Columns describe one characteristic of the entity Name Address Jane Doe 123 Main Street John Smith 456 Second Street Mary Poe 789 Third Ave Brad Lloyd & Michelle Zukowski Rows describe the Occurrence of an Entity 7 Data Retrieval (Queries) • Queries search the database, fetch info, and display it. This is done using the keyword SELECT SELECT * FROM publishers pub_id pub_name address state 0736 New Age Books 1 1st Street MA 0987 Binnet & Hardley 2 2nd Street DC 1120 Algodata Infosys 3 3rd Street CA • The Operator asks for every column in the table. Brad Lloyd & Michelle Zukowski * 8 Data Retrieval (Queries) • Queries can be more specific with a few more lines SELECT * from publishers where state = ‘CA’ pub_id pub_name address state 0736 New Age Books 1 1st Street MA 0987 Binnet & Hardley 2 2nd Street DC 1120 Algodata Infosys 3 3rd Street CA • Only publishers in CA are displayed Brad Lloyd & Michelle Zukowski 9 Data Input • Putting data into a table is accomplished using the keyword INSERT Variable INSERT INTO publishers VALUES (‘0010’, ‘pragmatics’, ‘4 4th Ln’, ‘chicago’, ‘il’) Keyword pub_id pub_name address state 0736 0010 New Age Books Pragmatics st Street 11 4 4th Ln MA IL 0987 0736 Binnet & Hardley New Age Books nd Street 21 2st Street 1 DC MA 1120 0987 Algodata Infosys Binnet & Hardley rd Street 32 3nd 2 Street CA DC 1120 Algodata Infosys 3 3rd Street CA • Table is updated with new information Brad Lloyd & Michelle Zukowski 10 Types of Tables There are two types of tables which make up a relational database in SQL • User Tables: contain information that is the database management system • System Tables: contain the database description, kept up to date by DBMS itself Relation Table Brad Lloyd & Michelle Zukowski Tuple Row Attribute Column 11 Using SQL SQL statements can be embedded into a program (cgi or perl script, Visual Basic, MS Access) OR SQL statements can be entered directly at the command prompt of the SQL software being used (such as mySQL) Brad Lloyd & Michelle Zukowski 12 Using SQL To begin, you must first CREATE a database using the following SQL statement: CREATE DATABASE database_name Depending on the version of SQL being used the following statement is needed to begin using the database: USE database_name Brad Lloyd & Michelle Zukowski 13 Using SQL • To create a table in the current database, use the CREATE TABLE keyword CREATE TABLE authors (auth_id int(9) not null, auth_name char(40) not null) auth_id auth_name (9 digit int) (40 char string) Brad Lloyd & Michelle Zukowski 14 Using SQL • To insert data in the current table, use the keyword INSERT INTO INSERT INTO authors values(‘000000001’, ‘John Smith’) • Then issue the statement SELECT * FROM authors auth_id auth_name 000000001 John Smith Brad Lloyd & Michelle Zukowski 15 Using SQL If you only want to display the author’s name and city from the following table: auth_id auth_name auth_city auth_state 123456789 Jane Doe Dearborn MI 000000001 John Smith Taylor MI SELECT auth_name, auth_city FROM publishers auth_name auth_city Jane Doe Dearborn John Smith Taylor Brad Lloyd & Michelle Zukowski 16 Using SQL To delete data from a table, use the DELETE statement: DELETE from authors WHERE auth_name=‘John Smith’ auth_id auth_name auth_city auth_state 123456789 Jane Doe Dearborn MI 000000001 John Smith Taylor MI Brad Lloyd & Michelle Zukowski 17 Using SQL To Update information in a database use the UPDATE keyword UPDATE authors SET auth_name=‘hello’ auth_id auth_name auth_city auth_state Hello Doe 123456789 Jane Dearborn MI Hello Smith 000000001 John Taylor MI Sets all auth_name fields to hello Brad Lloyd & Michelle Zukowski 18 Using SQL To change a table in a database use ALTER TABLE. ADD adds a characteristic. Initializer ALTER TABLE authors Type ADD birth_date datetime null auth_id auth_name auth_city auth_state birth_date 123456789 Jane Doe Dearborn MI . 000000001 John Smith Taylor MI . ADD puts a new column in the table called birth_date Brad Lloyd & Michelle Zukowski 19 Using SQL To delete a column or row, use the keyword DROP ALTER TABLE authors DROP birth_date auth_id auth_name auth_city auth_state auth_state 123456789 Jane Doe Dearborn MI . 000000001 John Smith Taylor MI . DROP removed the birth_date characteristic from the table Brad Lloyd & Michelle Zukowski 20 Using SQL The DROP statement is also used to delete an entire database. DROP DATABASE authors auth_id auth_name auth_city auth_state 123456789 Jane Doe Dearborn MI 000000001 John Smith Taylor MI DROP removed the database and returned the memory to system Brad Lloyd & Michelle Zukowski 21 Conclusion • SQL is a versatile language that can integrate with numerous 4GL languages and applications • SQL simplifies data manipulation by reducing the amount of code required. • More reliable than creating a database using files with linked-list implementation Brad Lloyd & Michelle Zukowski 22 References • “The Practical SQL Handbook”, Third Edition, Bowman. Brad Lloyd & Michelle Zukowski 23