15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 2 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 3 15 Typical Uses of Internet Table 15.2 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 4 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 5 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 6 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 7 15 Web-to-Database Middleware Figure 15.1 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 8 15 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) Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 9 15 API and CGI Web Server Interfaces Figure 15.2 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 10 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 11 15 ODBC to Access Databases Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel Figure 15.3 12 15 Web-to-Database Middleware Uses ODBC to Access Databases Figure 15.4 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 13 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 14 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 15 15 How ColdFusion Works Figure 15.5 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 16 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 17 15 ColdFusion Tags • CFQuery – Queries a database • CFOutput – Displays data returned by query • CFTable – Displays data in Tabular format Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 18 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 19 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 20 15 INSERTs and UPDATEs with ColdFusion • CFINSERT Tag – Adds records to database – Parameters • DATASOURCE • TABLENAME • CFUPDATE Tag – Updates selected database contents – Parameters • DATASOURCE • TABLENAME Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 21 15 DELETEs with ColdFusion • CFQUERY Tag – Uses SQL DELETE Statement – Parameters • DATASOURCE • TABLENAME Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 22 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 23 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 24 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 25 15 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 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 26 15 Denormalization • Web forms – Cannot use multiple data entry lines – 1:M relationships problematic • Solutions – Web programming languages – Java, JavaScript, VBScript Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 27