Upcoming SlideShare
Loading in...5







Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

web-database1.ppt web-database1.ppt Presentation Transcript

  • Web to Database Connectivity Tools Frank Cervone Assistant Director for Systems DePaul University Libraries Access ‘98 October 3, 1998
  • Introduction
    • Databases
    • Database APIs
    • Programming Languages
    • Access Models
  • Databases
    • Flat files
    • Relational databases
    • Object-oriented databases
  • Flat Files
    • Simple implementation
      • regular text
      • basic encoding
      • word, excel files
  • dbm Files
    • UNIX/gnu
    • library of routines that manage data files containing key/data pairs
    • read, write, delete by key
    • nonsorted traversal of all keys
  • dbm File Example There is no inherent mechanism for ensuring data consistency
  • Relational Databases
    • Most common data management scheme
    • Data is organized into two-dimensional tables of rows and columns
      • Data is decomposed to its simplest form
      • Normalization reduces data inconsistency
      • Referential integrity
  • Relational Database Example Student Table Course Table Enrollment Table
  • Object-oriented Databases
    • Can mean many things
    • Data exists as objects
      • each object encapsulates
        • data (attributes)
        • methods (procedures)
        • is a member and instance of a class of objects
        • may be a subset of a class and inherit characteristics of the superclass
  • Object-oriented Example Students Courses
  • Database APIs
    • Native-interface
    • ODBC
    • JDBC
    • CORBA
  • Native Interface
    • Low-level interface
    • Direct call from a program to an access method to retrieve data
    • Typically only used directly when accessing flat files
    • Often used from compiled programming languages
  • ODBC
    • Open Database Connectivity
    • Standard method for applications to request database information from other applications (i.e., database servers)
    • Common interface and language (SQL) to disparate database systems
    • Examples: Oracle, MS-SQL Server, MS-Access, DB2
  • ODBC Example Application MS-Access Driver Driver Manager MS-Access Database Oracle Driver Oracle Database MS-SQL Driver MS-SQL Database
  • JDBC™
    • Java Database Connectivity
    • Interface to ODBC for Java programs
    • Standard method for Java programs to request database information from other applications ( i.e., database servers)
    • Common interface and language (SQL) to ODBC-compliant database servers
    • Common Object Request Broker Architecture
    • Standard method for requesting objects from object-oriented database servers
    • Adoption has been slow, but is growing
  • Programming Languages
    • Java
    • C and/or C++
    • PERL/CGI
    • VBScript/ASP
  • CGI
    • Common Gateway Interface
    • A standard programming interface to web server applications
    • These applications act as gateways between the web server and the database
  • CGI Overview Client Web Browser Web Server Program or Script Database
  • CGI Details
    • Browser sends URL request with embedded CGI program name
    • Web server set environment variables, executes program, and passes form data via STDIN
    • Program examines environment variables, reads STDIN, performs requested functions, calls database
    • Database receives request from program and retrieves data
  • CGI Details Continued
    • Database returns data to calling program
    • Program acts on returned data
      • HTML page, text page, redirect command
      • sends results to web server via STDOUT
    • Web server creates HTTP-formatted result
    • Browser displays web page
  • CGI Interaction Client Web Browser Web Server Program or Script Database HTTP CGI ODBC
  • Using Databases from the Web
    • CGI program
      • C, C++
      • PERL
    • Intermediate program
      • mSQL/Lite
    • Database with web support
      • FileMaker Pro
    • Special web server
      • VBScript/IIS
      • ColdFusion
  • Displaying the Data
    • CGI program -
      • generates the web page on the fly
    • Database with web support
      • page is generated by database program
    • Intermediate program/Special web server -
      • page is interpreted and a new one is generated in its place
  • Interpreted Page Example <HTML> <BODY> <% set conn=server.createobject(“adodb.connection”) conn.open “DSN=Students;uid=master;pwd=test” set result=conn.execute(“select * fromenrollment”) response.write “<TABLE BORDER=1>” response.write “<TR>” for I=0 to howmanyfields response.write “<TD><B>” & result(i).name & “</B></TD>” next response.write “</TR>” . . . (etc.)
  • Scenarios
    • FileMaker Pro
    • MS-IIS/VBScript
    • mSQL/Lite
    • ColdFusion/Oracle
  • Suggestions
    • Understand your current needs
    • Project for your future plans
    • Keep server diversity to a minimum
    • Hire/train appropriate personnel