Modern Database Management Test Bank Chapter 7
Modern Database Management Test Bank Chapter 7
Modern Database Management Test Bank Chapter 7
A) application longevity.
B) reduced training costs.
C) cross-system communication.
D) all of the above.
Answer: D
3) The ________ is the structure that contains descriptions of objects such as tables and views created
by users.
A) SQL
B) schema
C) catalog
D) master view
Answer: B
A) DML
B) DDL
C) DCL
D) DPL
Answer: C
A) DML
B) DDL
C) DCL
D) DPL
Answer: A
A) Implementation
B) Physical design
C) Analysis
D) All of the above
Answer: B
A) create table.
B) create view.
C) create schema.
D) create authorization.
Answer: C
8) The SQL command ________ defines a logical table from one or more tables or views.
A) create table
B) alter table
C) create view
D) create relationship
Answer: C
A) truncate
B) drop
C) delete
D) unpack
Answer: B
Diff: 1 Page Ref: 252
10) The first in a series of steps to follow when creating a table is to:
11) The SQL command ________ adds one or more new columns to a table.
A) create table
B) alter table
C) create view
D) create relationship
Answer: B
14) Given a table named store with 5 fields: store_id, address, city, state, zipcode, why would the
following insert command not work?
insert into store values (‘234 Park Street’)
Where Product_ID = 7
17) Which of the following is a technique for optimizing the internal performance of the relational data
model?
19) In an SQL statement, which of the following parts states the conditions for row selection?
A) Select
B) From
C) Where
D) Group By
Answer: C
A) Selects all the fields from the Customer table for each row with a customer labeled “Best”
B) Selects the “*” field from the Customer table for each row with a customer labeled “Best”
C) Selects fields with a “*” in them from the Customer table
D) Selects all the fields from the Customer table for each row with a customer labeled “*”
Answer: A
from Product_V
24) Which of the following counts ONLY rows that contain a value?
A) Count
B) Count(*)
C) Tally(*)
D) Checknum
Answer: A
26) What will result from the following SQL Select statement?
Select min(Product_Description)
from Product_V;
A) < >
B) *
C) =
D) &
Answer: B
Select Item_No
from Order_V
from item
A) The Item_No and description for all items weighing less than 100
B) The Item_No for all items weighing between 101 and 199
C) The Item_No and description for all items weighing between 101 and 199
D) The Item_No for all items weighing more than 200
Answer: C
30) To eliminate duplicate rows in a query, the ________ qualifier is used in the SQL Select command.
A) alter
B) distinct
C) check
D) specific
Answer: B
from customers
32) To get all the customers from Hawaii sorted together, which of the following would be used?
A) Order By
B) Group By
C) Having
D) Sort
Answer: A
33) A single value returned from an SQL query that includes an aggregate function is called a(n):
A) agate.
B) scalar aggregate.
C) vector aggregate.
D) summation.
Answer: B
34) Multiple values returned from an SQL query that includes an aggregate function are called:
A) vector aggregates.
B) scalar aggregates.
C) agates.
D) summations.
Answer: A
35) Which of the following can produce scalar and vector aggregates?
A) Order By
B) Group By
C) Having
D) Sort
Answer: B
from deliveries
group by driver_no;
37) What will be returned when the following SQL statement is executed?
from deliveries
group by driver_no;
A) A listing of all drivers who made deliveries to state = ‘MA’, sorted by driver number
B) A listing of each driver who made deliveries to state = ‘MA’ as well as the number of deliveries that
each driver has made to that state
C) A count of all of the deliveries made to state = ‘MA’ by all drivers
D) None of the above
Answer: B
38) Which of the following finds all groups meeting stated conditions?
A) Select
B) Where
C) Having
D) Find
Answer: C
39) What will be returned when the following SQL query is executed?
from deliveries
group by driver_no
A) A listing of all drivers who made more than 2 deliveries as well as a count of the number of deliveries
B) A listing of all drivers
C) A listing of the number of deliveries greater than 2
D) A listing of all drivers who made more than 2 deliveries
Answer: A
40) Which of the following is true of the order in which SQL statements are evaluated?
A) virtual
B) dynamic
C) materialized
D) base
Answer: B
43) SQL is both an American and international standard for database access.
Answer: TRUE
Topic: Introduction
44) SQL has been implemented only in the mainframe and midrange environments.
Answer: FALSE
Topic: Introduction
Answer: FALSE
46) One of the original purposes of the SQL standard was to provide a vehicle for portability of database
definition and application modules between conforming DBMSs.
Answer: TRUE
Answer: TRUE
Answer: FALSE
49) Applications can be moved from one machine to another when each machine uses SQL.
Answer: TRUE
50) A catalog is the structure that contains object descriptions created by a user.
Answer: FALSE
Diff: 1 Page Ref: 247
51) Some DBMS can handle graphic data types as well as text and numbers.
Answer: TRUE
Answer: FALSE
53) A database table is defined using the data definition language (DDL).
Answer: TRUE
54) A database is maintained and queried using the data mapping language (DML).
Answer: FALSE
Answer: FALSE
56) When creating tables, it’s important to decide which columns will allow null values before the table
is created.
Answer: TRUE
57) When creating a table, it is not important to consider foreign key—primary key mates.
Answer: FALSE
58) A referential integrity constraint specifies that the existence of an attribute in one table depends
upon the existence of a foreign key in the same or another table.
Answer: FALSE
59) The DELETE TABLE DDL command is used to remove a table from the database.
Answer: FALSE
Answer: TRUE
Answer: TRUE
62) An insert command does not need to have the fields listed.
Answer: TRUE
Answer: FALSE
64) The DROP command deletes rows from a table individually or in groups.
Answer: FALSE
65) In order to update data in SQL, one must inform the DBMS which relation, columns, and rows are
involved.
Answer: TRUE
Answer: FALSE
67) The WHERE clause includes the conditions for row selection within a single table or view and the
conditions between tables or views for joining.
Answer: TRUE
Answer: TRUE
69) Count(*) tallies only those rows that contain a value, while Count counts all rows.
Answer: FALSE
70) The asterisk (*) wildcard designator can be used to select all fields from a table as well as in WHERE
clauses when an exact match is not possible.
Answer: TRUE
Answer: FALSE
72) If multiple Boolean operators are used in an SQL statement, NOT is evaluated first, then AND, then
OR.
Answer: TRUE
73) The following two SQL statements will produce the same results.
from customer
from customer
Answer: TRUE
Diff: 2 Page Ref: 270, 271
Answer: TRUE
75) The following two SQL statements will produce different results.
from customer
where state = ‘MA’ or state = ‘NY’ or state = ‘NJ’ or state = ‘NH’ or state = ‘CT’;
from customer
Answer: FALSE
76) The ORDER BY clause sorts the final results rows in ascending or descending order.
Answer: TRUE
77) A single value returned from an SQL query that includes an aggregate function is called a vector
aggregate.
Answer: FALSE
78) When a GROUP BY clause is included in an SQL statement, only those columns with a single value for
each group can be included.
Answer: TRUE
Answer: FALSE
from salesperson
group by salesperson_id;
Answer: TRUE
81) The following query totals sales in state= ‘MA’ for each salesperson.
group by salesperson_id
Answer: FALSE
82) The ORDER BY clause is the first statement processed in an SQL command.
Answer: FALSE
83) The WHERE clause is always processed before the GROUP BY clause when both occur in a SELECT
statement.
Answer: TRUE
84) The FROM clause is the first statement processed in an SQL command.
Answer: TRUE
85) The content of dynamic views is generated when they are referenced.
Answer: TRUE
86) Materialized views are stored on disk and are never refreshed.
Answer: FALSE
87) The views are created by executing a CREATE VIEW SQL command.
Answer: TRUE
Answer: FALSE
89) What were the original purposes of SQL, and does SQL as we know it today live up to those
standards?
To specify the syntax and semantics of SQL data definition and manipulation languages
To define the data structures and basic operations for designing, accessing, maintaining, controlling, and
protecting an SQL database
To provide a vehicle for portability of database definition and application modules between conforming
DBMSs
To specify both minimal (Level 1) and complete (Level 2) standards, which permit different degrees of
adoption in products
To provide an initial standard, although incomplete, that will be enhanced later to include specifications
for handling such topics as referential integrity, transaction management, user-defined functions, join
operators beyond the equi-join, and national character sets
While SQL as we know it today does have some variants, there is a basic standard which is adhered to.
As mentioned in the text, it seems that industry lags behind the standards somewhat. Each vendor has
its own set of proprietary features which differ from the standard.
90) What are some of the advantages and disadvantages to an SQL standard?
Answer: Some of the advantages are: reduced training costs, increased productivity, application
portability, application longevity, reduced dependence on a single vendor and cross-system
communication. Some disadvantages include: stifling creativity, difficulty in changing standard, and loss
of application portability when adding additional proprietary features.
91) Explain the three classes of SQL commands and when they would be used.
Answer: There are three classes or types of SQL commands. Data definition language commands are
used to create tables, alter and drop tables, views and indexes. These commands are used to build the
structure of the database as well as some additional objects. The next type is Data Manipulation
Language commands, which are used to maintain and query a database. Commands in this class include
select, update, delete and insert. The last type is the data control language commands, which are used
to grant and revoke privileges on tables and other objects in the database.
Identify the appropriate data type and length for each attribute
Identify the columns that should accept null values
Identify that columns that need to be unique
Identify all primary-foreign key mates
Determine default values
Identify any columns for which domain constraints, such as check, need to be stated
Create the table and any indexes using create table and create index statements
Diff: 3 Page Ref: 252, 253
93) What three clauses are contained in most SQL retrieval statements?
Answer: The SELECT clause, which lists the columns and calculated expression from base tables. The
FROM clause, which identifies tables and views which we want to gather data from in the query. Finally,
the WHERE clause, which is used to specify conditions for selection of rows in the result set.
94) What are some of the standard SQL functions that can be used in the SELECT clause?
Answer: The standard functions can be broken down into 4 categories: Mathematical, String, Date and
Analytical. Mathematical functions include: Min, Max, Count, Sum, Round, Trunc and Mod. String
functions include lower, upper, initcap, concat, substr and coalesce. Date functions are used for
converting dates and calculating dates and include next_day, add_months and months_between. Top
(to find the top n values) is one of the analytical functions.
Answer: The GROUP BY clause is useful when you have a set of values for one column (such as a
salesperson ID) and you would like to then calculate something like total sales for each salesperson.
Rather than having to use the sum function with one salesperson’s ID in the WHERE clause (and run
multiple queries) you can use the GROUP BY to get the same results in one query.
96) How is the HAVING clause different from the WHERE clause?
Answer: While the WHERE clause works on each row in a query resultset, the HAVING clause works on
the aggregate (or combined) rows in a GROUP BY. WHERE does not allow aggregates while the HAVING
does allow aggregates. For example, if you had the following query:
from customer
this would not work. However, with a GROUP BY and HAVING written as follows we would get back all
customers whose total purchases were greater than $100
from customer
group by customer_id
Answer: Materialized views are just like dynamic views, except that an actual copy of the data is kept.
With a dynamic view, the SQL is stored on the server and executed when the view is referenced. A
materialized view, on the other hand, keeps a copy of the actual data. This increases performance and is
particularly useful if the data are relatively static and the number of queries against the view are high.