Database Systems: Design, Implementation, and Management - Regis

quicksandwalleyeInternet and Web Development

Oct 31, 2013 (3 years and 9 months ago)

95 views

15

Chapter 15

Web Database Development


Database Systems: Design, Implementation, and
Management, Fifth Edition, Rob and Coronel

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

2

In this chapter, you will learn:


How Internet databases are typically used


About the architecture of Web
-
to
-
database
middleware


How Web
-
to
-
database middleware (ColdFusion) is
used to integrate databases with the Internet


What special considerations govern Web
database development

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

3

Web Database Connectivity


Allows rapid response to competitive pressures


New services


New products


Customer support enhanced


Fast effective information dissemination


Universal access


Local


Around the globe

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

4

Typical Uses of Internet

Table 15.2

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

5

Characteristics/Benefits

of Internet Technology


Hardware & software independence


Cost savings


Uses existing equipment


Platform independence and portability


No need for multiple platform development


Common simple user interface


Reduced training


Reduced support

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

6

Characteristics/Benefits

of Internet Technology (con’t.)


Location Independence


Global access through Internet


Reduced costs for dedicated connections


Rapid development at manageable costs


Development tools


Low entry costs


Available software & access tools



15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

7

Web
-
to
-
Database Middleware


Server
-
side extension


Interacts directly with Web server


Handles specific requests


Also known as Web
-
to
-
database middleware


Examples


ColdFusion


CGI


API


15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

8

Web
-
to
-
Database Middleware

Figure 15.1

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

9

Web Server Interfaces


Common Gateway Interface (CGI)


Uses script files to connect to database


Perl, C++, VB


Application Programming Interface (API)


Newer and more efficient


Uses DLLs


Memory resident and faster


Well known APIs


Netscape (NSAPI)


Internet Server API from Microsoft (ISAPI)


WebSite API from O’Reilly (WSAPI)

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

10

API and CGI Web Server Interfaces

Figure 15.2

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

11

Web
-
to
-
Database Middleware
Connection Methods


Native SQL access middleware


Use services of Open Database Connectivity
(ODBC)


Use Object Linking and Embedding Database
(OLE DB) interface with Windows


ODBC most common

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

12

ODBC to Access Databases

Figure 15.3

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

13

Web
-
to
-
Database Middleware Uses
ODBC to Access Databases

Figure 15.4

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

14

Web Browser


Located on the client computer


End user Web interface


Interprets HTML code received from Web server


Presents page components in a standard way


Client
-
side extensions


Plug
-
ins


Java and JavaScript


ActiveX and VBScript

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

15

ColdFusion


Web application server


Uses


Connect and query database from Web page


Present database data in a Web page


Create dynamic Web search pages


Create Web pages to insert, update, and delete
data


Define required and optional relationships


Define required and optional form fields


Enforce referential integrity in form fields


Use simple and nested queries to represent
business rules

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

16

How ColdFusion Works

Figure 15.5

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

17

How ColdFusion Works


Server
-
side markup language


HTML extensions


ColdFusion Markup Language (CFML)


Executed in interpreter mode


Contain HTML, CFML


May contain Java, JavaScript, or VBScript


Client browser requests .cfm page from Web
Server


ColdFusion application server executes .cfm script


Sends resulting output in HTML to Web Server


Web server sends to client browser


15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

18

ColdFusion Tags


CFQuery


Queries a database


CFOutput


Displays data returned by query


CFTable


Displays data in Tabular format


15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

19

ColdFusion Dynamic Query


Create script to generate form with criteria used
in database search


Create script to execute query and display results


Uses ColdFusion tags


Uses HTML

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

20

The Web as a Stateless System


Web server does not know status of any client
at any given time


Request
-
reply model of communication


Browser concerned only with current page


Data processing requires additional software


Java, JavaScript, VBScript

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

21

INSERTs and UPDATEs with
ColdFusion


CFINSERT Tag


Adds records to database


Parameters


DATASOURCE


TABLENAME


CFUPDATE Tag


Updates selected database contents


Parameters


DATASOURCE


TABLENAME



15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

22

DELETEs with ColdFusion


CFQUERY Tag


Uses SQL DELETE Statement


Parameters


DATASOURCE


TABLENAME




15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

23

Internet Database: Special
Considerations


Involve more than just database
-
enabled Web
applications


Issues important to corporate databases


Data security


Transaction management


Client
-
side data validation


Operational and management challenges


Database applications development most
affected by Internet

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

24

Supported Data Types


Integrated data from multiple sources


Word
-
processor documents


Pictures


Sounds


Movies


Methods for storing and extracting data objects


Overhead created by storage


Client browser support of object being accessed


Size of database considering multimedia and
other data


15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

25

Data Security


Web Server Level


Secure transactions using encryption


TCP/IP protocol level


Firewalls


RMDBS Vendors


Login authentication


Restrict access to particular SQL commands


Web
-
to
-
database middleware


End user restrictions


Designer created algorithms


Must support e
-
commerce applications


15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

26

Transaction Management


Concept is foreign to Web


Dilemma created by request
-
reply model


Web cannot maintain open line between client and
database


Recovery requires client maintain open
communications


Designers must ensure proper transaction
management support at database server level


ColdFusion uses CFTRANSACTION tag for
transaction management support

15

Database Systems: Design, Implementation, & Management, 5
th

Edition, Rob & Coronel

27

Denormalization


Web forms



Cannot use multiple data entry lines


1:M relationships problematic


Solutions


Web programming languages


Java, JavaScript, VBScript