dr. chen, business database systems (oracle) chapter 2 connecting to oracle 11g and basic sql select...

53
Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS School of Business, Gonzaga University Spokane, WA 99258 USA [email protected]

Upload: beverly-haynes

Post on 26-Dec-2015

220 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Chapter 2 Connecting to Oracle 11g

andBasic SQL SELECT Statements

Jason C.H. Chen, Ph.D.

Professor of MIS

School of Business, Gonzaga University

Spokane, WA 99258 USA

[email protected]

Page 2: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)2

Objectives• Learn how to connect to Oracle 11g (client/server and

Personal)• Create the initial database• Learn database objects and SQL commands and components• Identify keywords, mandatory clauses, and optional clauses in

a SELECT statement• Select and view one/all columns of a table • Display multiple columns of a table• Use a column alias to clarify the contents of a particular

column• Perform basic arithmetic operations in the SELECT clause• Remove duplicate lists using either the DISTINCT or

UNIQUE keyword• Use concatenation to combine fields, literals, and other data

Page 3: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)3

Connect to Oracle 11g

• There are two ways connecting to and working with Oracle 11g

• SQL Plus– a command driven facility

• SQL Developer– a GUI facility

Indicate the following link to include java.exe (use “Browse”):c:\program Files(x86)\java\jdk1.7.0…\bin\java.exe

Page 4: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Connect to Oracle 11g usingSQL Plus

Figure 2-1 SQL*Plus Interface

type “exit” to quit the system

Page 5: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Connect to Oracle 11g usingSQL Developer for the first time

When asked if you like to migrate settings, You click on “No”

Page 6: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Connect to Oracle 11g usingSQL Developer for the first time

Sometimes you need to do the following …(also available on the Installation Guide on Bb)

Now run SQL Developer. You will be prompted to enter the pathname for your newly installed Java JDK program. If the program was installed in C and you run a 64-bit version of Windows, the destination will be as follows: C:\Program Files (x86)\Java\jdk1.7.0…\bin\java.exe. If not you click Browse and find the Java program yourself, just make sure you point to the JDK version not the JRE.

Page 7: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Connect to Oracle 11g usingSQL Developer

Figure 2-2 SQL Developer Interface

Page 8: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Connect to Oracle 11g usingSQL Developer

click on

Page 9: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

#1

#2

Complete the information on the Database Connection Screen

jepson-oracle

sbaora11

Page 10: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Connect to Oracle 11g usingPersonal SQL Developer

click on TNS

(password is created during the Oracle installation)

Page 11: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Complete the information on the Database Connection Screen(Personal Oracle 11g)

Page 12: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)12

YOUR TURNHow to Access Your Oracle11g Account

• User Name: <your lastname>• Password: <…> <bmis441> [case sensitive]

jepson-oracle

sbaora11

Page 13: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

drag, if “output screen” not displayed

Page 14: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)14

Database Objects and Queries

• An Oracle database consists of multiple user accounts• Each user account owns database objects

– Tables– Views– Stored programs, etc.

• Query: command to perform operation on database object

• Structured Query Language (SQL)– Industry standard query language for most of relational

databases– Consists of about 30 commands

Page 15: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Basic SQL Concepts and Commands

SQL (Structured Query Language) is used to manipulate the database.

There are two basic types of SQL commands:

DDL commands work with the structure of the objects (tables, indexes, views) in the database.

DML commands work with the data in the database (i.e.,manipulate the data). Reserved words - SQL command words

4Data Definition Language (DDL)

4Data Manipulation Language (DML)

Page 16: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)16

SQL Components

DDL

DML

DCL

D.B.

ORACLE(SQL Components)

(Create Table structure and insert database)

Page 17: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)17

DDL Commands

• Used to create and modify the structure of database objects– CREATE– ALTER– DROP– GRANT– REVOKE

• DDL commands execute as soon as they are issued, and do not need to be explicitly saved

Page 18: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)18

DML Commands

• Used to insert, view, and modify database data– INSERT– UPDATE– DELETE– SELECT

• DML commands need to be explicitly saved or rolled back – COMMIT– ROLLBACK– SAVEPOINT

Page 19: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)19

Create the JustLee Database

• Use the provided script to create the database so you can follow the chapter examples

• Verify table contents (structure) using the DESCRIBE command

Page 20: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)20

Scripts

• Scripts are simply files that contain a sequence of SQL and/or PL/SQL commands that can be executed in SQL*Plus.

• Note:– SQL and PL/SQL(to be introduced) are two

languages Oracle uses.– SQL*Plus is the tool we use to access Oracle.– SQL*Plus can execute both SQL and PL/SQL

commands plus it has its own commands.

Page 21: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)21

Class Exercise• Create a new folder on c:\ as follows:

c:\oradata\chapter2• Download all files in chapter 2 from Bb (under

“Course Documents”) into c:\oradata\chapter2\• Logon to SQL*Plus and type the following

command (not on SQL Developer)

SQL> start c:\oradata\chapter2\JLDB_Build.sql

or,

SQL> @ c:\oradata\chapter2\JLDB_Build.sql

SQL> SELECT * FROM publisher;

Page 22: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)22

Class Exercise (continued)

• A table name only can be created once and saved in the current database. Therefore, if you re-do the previous start command you will receive error message.

• To avoid the problem, you need DROP the tables from the database before those tables (using the same names) are recreated.

• Type the following command for SQL> start c:\oradata\chapter2\JLDB_Drop.sql

SQL> SELECT * FROM publisher;

Page 23: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)23

Installing Personal Oracle11g

• I created a “Discussion Questions” on the Bb for you to share (or post question) your experience on installation of Oracle 11g. Please participate and it will be also your part of class performance.

•  • Please note that if your computer with 64-bit operating

system such as Windows 7, you can’t use the bundled DVD to install Oracle since it is for 32-bit OS. Rather you need to download 64-bit Oracle 11g from the Oracle site (www.oracle.com) or type in keyword search of “Oracle 11g download”.

Page 24: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Figure 2-3 List of existing (created) tables

How to verify “Created” Tables and their Structure?

Figure 2-3 List the structure of the BOOKS table

Also try to type the same commands on SQL>

Page 25: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)25

SELECT Statement Syntax

• SELECT statements are used to retrieve data from the database

• A SELECT statement is referred to as a query• Syntax gives the basic structure, or rules, for a

command• Optional clauses and keywords are shown in

brackets

Page 26: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

SELECT Statement Syntax (continued)

• SELECT and FROM clauses are required• SELECT clause identifies column(s)• FROM clause identifies table(s)• Each clause begins with a keyword

Figure 2-5 Syntax for the SELECT statement

Page 27: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Selecting All Data in a Table

• Substitute an asterisk for the column names in a SELECT clause

Figure 2-6 Command to select all data in a table

Page 28: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Selecting One Column from a Table

• Enter column name in SELECT clause

Figure 2-7 Command to select in a single column

-- CASE is not sensitive-- chapter 2, Figure 2-8; p. 34SELECT TITLE FROM BOOKS;SELECT title from books;SELECT title FROM books;SELECT TITLEFROM BOOKS;

Page 29: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Selecting Multiple Columns from a Table

• Separate column names with a comma

Figure 2-9 Command to select multiple columns from a table

-- chapter 2, Figure 2-10; p. 36SELECT pubdate, title FROM books;

Figure 2-10 Reversed column sequence in the SELECT clause

Page 30: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)30

Capture (Spool) an output

SQL> Spool c:\oradata\Oracle_ch2_Spool_Lname_Fname.txt

SQL> --#3

SQL> SELECT title, pubdate AS "Publication Date"

FROM books;

SQL> Spool off

Then, open Oracle_ch2_Spool_Lname_Fname.txt in the folder of oradata

Verify the outputSee detailed steps on (Bb): Instruction_on_Creating_sql_and_SPOOL.pptx

Page 31: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)31

Operations within the SELECT Statement

• List the alias after the column heading• AS keyword is optional• Enclose in double quotation marks:

– If it contains blank space(s)– If it contains special symbol(s)– To retain case

• Column alias can be used for column headings• Perform arithmetic operations• Suppress duplicates• Concatenate data

Page 32: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)32

Column Alias Example

Figure 2-11 Using a column alias Figure 2-12 Using a column alias without the AS keyword

Page 33: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)33

Using Arithmetic Operations

• Arithmetic operations– Executed left to right– Multiplication and division are solved first– Addition and subtraction are solved last– Override order with parentheses

Page 34: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)34

Example Arithmetic Operation with Column Alias

Figure 2-13 Using a column alias for an arithmetic expression

Page 35: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Figure 2-14 NULL values in the Discount column

Page 36: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

ISBN TITLE PUBDATE PUBID COST---------- ------------------------------ --------- ---------- ---------- RETAIL DISCOUNT CATEGORY---------- ---------- ------------1059831198 BODYBUILD IN 10 MINUTES A DAY 21-JAN-05 4 18.75 30.95 FITNESS

0401140733 REVENGE OF MICKEY 14-DEC-05 1 14.2 22 FAMILY LIFE

4981341710 BUILDING A CAR WITH TOOTHPICKS 18-MAR-06 2 37.8 59.95 3 CHILDREN

8843172113 DATABASE IMPLEMENTATION 04-JUN-03 3 31.4 55.95 COMPUTER

3437212490 COOKING WITH MUSHROOMS 28-FEB-04 4 12.5 19.95 COOKING

3957136468 HOLY GRAIL OF ORACLE 31-DEC-05 3 47.25 75.95 3.8 COMPUTER

The following output is from SQL>

Question: How can we improve the output?(see chapter 2, Figure 2-14(b) on Ch2Queries.sql)

We will learn it later and more in the later chapters.

SQL> select * from books;

Page 37: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Using DISTINCT and UNIQUE • Enter DISTINCT or UNIQUE after SELECT keyword to suppress duplicates

Figure 2-16 List of unduplicated states for customers

-- chapter 2, Figure 2-16; p. 43-- without DISTINCTSELECT stateFROM customers;

SQL> SELECT state FROM customers;

ST--FLCAFLIDWANYTXWYCAGAILMAFLWYFLCAMIGANJNJ

20 rows selected.

Page 38: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Figure 2-17 Unduplicated list of cities for customers

More example

-- chapter 2, Figure 2-17; p. 44SELECT DISTINCT state, cityFROM customers;

Page 39: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)39

Using Concatenation

• You can combine data with a string literal

• Use the concatenation operator, ||

• It allows the use of column aliases

Figure 2-18 Concatenation of two columns

Page 40: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)40

Concatenation Examples with Alternate name

Figure 2-20 Using a column alias for concatenated valuesFigure 2-219 Using a string literal in concatenation

Page 41: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

SQL> select * from books;

ISBN TITLE PUBDATE PUBID COST---------- ------------------------------ --------- ---------- ---------- RETAIL DISCOUNT CATEGORY---------- ---------- ------------1059831198 BODYBUILD IN 10 MINUTES A DAY 21-JAN-05 4 18.75 30.95 FITNESS

0401140733 REVENGE OF MICKEY 14-DEC-05 1 14.2 22 FAMILY LIFE

4981341710 BUILDING A CAR WITH TOOTHPICKS 18-MAR-06 2 37.8 59.95 3 CHILDREN

8843172113 DATABASE IMPLEMENTATION 04-JUN-03 3 31.4 55.95 COMPUTER

3437212490 COOKING WITH MUSHROOMS 28-FEB-04 4 12.5 19.95 COOKING

3957136468 HOLY GRAIL OF ORACLE 31-DEC-05 3 47.25 75.95 3.8 COMPUTER

The following output is from SQL>

Question: How can we produce a readable output format?

Page 42: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)42

Formatting Output in SQL*Plus

• To change default column headings:– Specify alternate column headings: SELECT fieldname1

"heading1_text", fieldname2 "heading2_text", ...– Use an alias for column headings: SELECT fieldname1 AS

alias_name1...– Use column statement

• To change SQL*Plus line and page size settings– Select Options/Environment on menu bar– Modify linesize and pagesize to desired values

• You may also type the following commands at SQL>– SQL> SET LINESIZE 80– SQL> SET PAGESIZE 45

• Please download chapter 14 (pdf file on Bb) for more commands on formatting output.

Page 43: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Advanced SQL Commandsclear screen;column <fieldname> format a15 wrapcolumn <fieldname> format a15 wordcolumn <fieldname> format a20 heading ‘description for the field’column <fieldname> format a15 truncatecolumn <fieldname> format $999.99-- note: default is wrap

-- formatting output (try it on the SQL>)-- chapter 2, Figure 2-14(b); p. 41clear screenSET LINESIZE 80SET PAGESIZE 45column title format a12 heading 'Book Title' WORDcolumn PubID format 99 heading 'ID'column Cost format $999.99column retail format $999.99

SELECT * FROM books;

Read and practice all the SQL commands in Ch2Queries.sql file (esp. those at the end of the file)

Page 44: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

ISBN Book Title PUBDATE ID COST RETAIL DISCOUNT CATEGORY---------- ------------ --------- --- -------- -------- ---------- ------------1059831198 BODYBUILD IN 21-JAN-05 4 $18.75 $30.95 FITNESS 10 MINUTES A DAY0401140733 REVENGE OF M 14-DEC-05 1 $14.20 $22.00 FAMILY LIFE ICKEY4981341710 BUILDING A C 18-MAR-06 2 $37.80 $59.95 3 CHILDREN AR WITH TOOT HPICKS8843172113 DATABASE IMP 04-JUN-03 3 $31.40 $55.95 COMPUTER LEMENTATION3437212490 COOKING WITH 28-FEB-04 4 $12.50 $19.95 COOKING MUSHROOMS3957136468 HOLY GRAIL O 31-DEC-05 3 $47.25 $75.95 3.8 COMPUTER F ORACLE1915762492 HANDCRANKED 21-JAN-05 3 $21.80 $25.00 COMPUTER COMPUTERS9959789321 E-BUSINESS T 01-MAR-06 2 $37.90 $54.50 COMPUTER HE EASY WAY2491748320 PAINLESS CHI 17-JUL-04 5 $48.00 $89.95 4.5 FAMILY LIFE LD-REARING0299282519 THE WOK WAY 11-SEP-04 4 $19.00 $28.75 COOKING TO COOK8117949391 BIG BEAR AND 08-NOV-05 5 $5.32 $8.95 CHILDREN LITTLE DOVE0132149871 HOW TO GET F 11-NOV-06 4 $17.85 $29.95 1.5 SELF HELP ASTER PIZZA9247381001 HOW TO MANAG 09-MAY-03 1 $15.40 $31.95 BUSINESS E THE MANAGE RISBN Book Title PUBDATE ID COST RETAIL DISCOUNT CATEGORY---------- ------------ --------- --- -------- -------- ---------- ------------2147428890 SHORTEST POE 01-MAY-05 5 $21.85 $39.95 LITERATURE MS 14 rows selected.

Here is a better output after formatting output:

Page 45: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Step 1. Create SQL commands using Notepad

Instruction on Creating a Script file and save as *.sql file

Step 2. Click File then Save As..

Page 46: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Instruction on Creating a Script file and save as *.sql file (cont.)

Step 3. “Save AS” … Screen

Step 4. Change from “Text Document ( *.txt) to “All Files (*.*)” on “Save as type” box

Page 47: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Instruction on Creating a Script file and save as *.sql file (cont.)

Step 5. Enter a right file name (Oracle_Ch2_Chen_Jason.sql)

• Then spool it onto the file of Oracle_ch2_Spool_Chen_Jason.txt• How?• See next …

Page 48: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Break !Hands-On Assignments

In class exercise (p.54) - #2 - see spool instruction on the next slideHW (Odd numbers only (pp.54-55), but do #1 at the end as it will affect the rest of problems)

- run the following two commands:Start c:\oradata\chapter2\JLDB_Drop.sqlStart c:\oradata\chapter2\JLDB_Build.sqlOutput should be formatted in a very good manner.

Scripting file name: Oracle_ch2_Lname_Fname.sql Spooled file name: Oracle_ch2_Spool_Lname_Fname.txt

Email me with the spooled file using attachment to:[email protected] subject title of Bmis441-01_Oracle_ch2 (or Bmis441-02_Oracle_ch2)

Page 49: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)

Homework - Hands-On Assignments

Read and Practice all examples on Chapters 2• 1. Run two script files: JLDB_Drop.sql and

JLDB_Build.sql• 2. Read Oracle assignment and create a script file

Oracle_ch2_Lname_Fname.sql for odd number questions on “Hands-on Assignments”. Use appropriate COLUMN statements to produce readable outputs

• 3. Execute and test one problem a time (do #1 at the end, why?) and make sure they are all running successfully. Include class and personal information.

• 4. When you done, spool the script files (see next slide for spooling instructions) and email the file (Oracle_ch2_Spool_Lname_Fname.txt) to me by midnight this coming Sunday. Turn in a hardcopy to me in the class.

Email me with one attachment(Oracle_ch2_Spool_Lname_Fname.) to:[email protected] subject title of Bmis441-01_Oracle_ch2 (or Bmis441-02_Oracle_ch2)

Page 50: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)50

How to Spool your Script and Output Files

After you tested the script file of Oracle_ch2_Lname_Fname.sql successfully, follow the instructions below to spool both script and output files:

Step 0. Run the following two script files from SQL*Plus (since you have created JLDB tables)– Start c:\oradata\chapter2\JLDB_Drop.sql– Start c:\oradata\chapter2\JLDB_Build.sql

• 1. type the following on SQL>– Spool c:\oradata\Oracle_ch2_Spool_Lname_Fname.txt (make sure your name is entered)

• 2. open Oracle_ch2_Lname_Fname.sql that you already tested• 3. copy and paste all the SQL commands (including all comments) to the

SQL*PLUS • 4. type Spool Off on the SQL>The output should contain your personal information, all SQL commands and

their solution on the .txt file and saved in C: drive (oradata\ folder)

Email me the spooled file (.txt) with attachment to:[email protected] subject title of Bmis441-01_Oracle_ch2 (or Bmis441-02_Oracle_ch2)

Page 51: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)51

Summary

• A basic query in Oracle 11g SQL includes the SELECT and FROM clauses, the only mandatory clauses in a SELECT statement

• To view all columns in the table, specify an asterisk (*) or list all of the column names individually in the SELECT clause

• To display a specific column or set of columns, list the column names in the SELECT clause (in the order in which you want them to appear)

• When listing column names in the SELECT clause, a comma must separate column names

Page 52: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)52

Summary (continued)

• A column alias can be used to clarify the contents of a particular column; if the alias contains spaces or special symbols, or if you want to display the column with any lowercase letters, you must enclose the column alias in double quotation marks (" ")

• Indicate the table name following the FROM keyword

• Basic arithmetic operations can be performed in the SELECT clause

• NULL values indicate an absence of a value

Page 53: Dr. Chen, Business Database Systems (Oracle) Chapter 2 Connecting to Oracle 11g and Basic SQL SELECT Statements Jason C.H. Chen, Ph.D. Professor of MIS

Dr. Chen, Business Database Systems (Oracle)53

Summary (continued)

• To remove duplicate listings, include either the DISTINCT or UNIQUE keyword

• To specify which table contains the desired columns, you must list the name of the table after the keyword FROM

• Use vertical bars (||) to combine, or concatenate, fields, literals, and other data

53