SlideShare a Scribd company logo
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Database Principles
Fundamentals of Design,
Implementation, and Management
Carlos Coronel, Steven Morris,
Keeley Crockett, Craig Blewett
CHAPTER 17
DATABASE CONNECTIVITY AND
WEB TECHNOLOGIES
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
In this chapter, you will learn:
• About the different database connectivity technologies
• What Extensible Markup Language (XML) is and why it is
important for Web database development
• About the functionality and features of various database
connectivity technologies: ODBC, OLE, ADO.NET and JDBC
• What services are provided by Web application servers
• About cloud computing and how it enables the database-as-a-
service model.
• About the Semantic Web
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Database Connectivity
• Refers to mechanisms through which
application programs connect and
communicate with data repositories
• Databases store data in persistent storage
structures so that they can be retrieved at a
later time for processing
• Database connectivity software works in a
client/server architecture, in which processing
tasks are split among multiple software layers
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Native SQL Connectivity
• Refers to connection interface that is provided
by database vendor and is unique to that
vendor
• Best example of that type of native interface is
Oracle RDBMS
– To connect client application to Oracle database,
you must install and configure Oracle’s SQL*Net
interface in client computer
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Native SQL Connectivity (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ODBC, DAO,RDO and UDA
• Open Database Connectivity (ODBC)
– Microsoft’s implementation of a superset of SQL
Access Group Call Level Interface (CLI) standard
for database access
– Probably most widely supported database
connectivity interface
– Allows any Windows application to access
relational data sources, using SQL via standard
application programming interface (API)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ODBC, DAO, and RDO (continued)
• Data Access Objects (DAO)
– Microsoft's API that allows access to the Microsoft
Access database.
– DAO was Microsoft's first object-oriented API.
However, while DAO is still widely used there is a
move towards ActiveX Data Objects (ADO).
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ODBC, DAO, and RDO (continued)
• Remote Data Objects (RDO)
– was a higher level object-oriented application
interface primarily used in Microsoft Visual Basic.
– allowed developers to interface directly with ODBC
data sources.
• Microsoft's Universal Data Access (UDA)
– a new framework
– UDA is designed to bring about a single uniform API
that will allow access to relational and non-relational
databases.
ODBC, DAO, and RDO (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ODBC, DAO, RDO and UDA
(continued)
• Basic ODBC architecture has three main
components:
– High-level ODBC API through which application
programs access ODBC functionality
– Driver manager that is in charge of managing all
database connections
– ODBC driver that communicates directly to DBMS
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ODBC, DAO, RDO and UDA
(continued)
ODBC, DAO, RDO and UDA (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
OLE-DB
• Object Linking and Embedding for Database (OLE-DB)
• Database middleware that adds object-oriented functionality
for access to relational and non-relational data
• Composed of series of COM objects that provide low-level
database connectivity for applications
• OLE-DB model is better understood when you divide its
functionality into following types of objects:
– Consumers
– Providers
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
OLE-DB (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
OLE-DB (continued)
• OLE-DB did not provide support for scripting
languages
• ActiveX Data Objects (ADO) provides high-
level application-oriented interface to interact
with OLE-DB, DAO, and RDO
• ADO provides unified interface to access data
from any programming language that uses the
underlying OLE-DB objects
OLE-DB (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ADO.NET
• ADO.NET is data access component of Microsoft’s .NET
application development framework
• Introduced two new features critical for development of
distributed applications: DataSets and XML support
– DataSet is disconnected memory-resident representation of database
– DataSet is internally stored in XML format and data in DataSet can be
made persistent as XML documents
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ADO.NET (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
ADO.NET (continued)
• ADO.NET comes with two standard data providers:
– Data provider for OLE-DB data sources
– Data Provider for SQL Server
• No matter data provider, it must support set of specific
objects in order to manipulate data in data source
– Connection
– Command
– DataReader
– DataAdapter
– DataSet
– DataTable
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Java Database Connectivity (JDBC)
• Java Database Connectivity (JDBC) is an application
programming interface that allows a Java program to
interact with a wide range of data sources, including
relational databases, tabular data sources, spreadsheets,
and text files.
• JDBC allows a Java program to establish a connection with
a data source, prepare and send the SQL code to the
database server, and process the result set.
Java Database Connectivity (JDBC)
(Continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
PHP
• PHP or Hypertext Preprocessor, is a widely-used
general-purpose scripting language that is especially
• suited for web development and is seen as an
alternative to Microsoft’s ASP.
• A Server-Side Scripting Language, which means that it
is interpreted on the web server before the webpage
• is sent to a web browser to be displayed.
• PHP supports connectivity to a number of different
databases through specific database extensions in the
case of MySql to connecting through ODBC extensions
for ORACLE.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Database Internet Connectivity
• Web database connectivity allows new innovative
services that:
– Permit rapid response to competitive pressures by
bringing new services and products to market quickly
– Increase customer satisfaction through creation of
Web-based support services
– Allow anywhere, anytime data access using mobile
smart devices via the internet.
– give fast and effective information dissemination
through universal access from across street or across
globe
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Internet Databases (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web-to-Database Middleware:
Server-Side Extensions
• Also known as Web-to-database middleware
• Program that interacts directly with Web
server to handle specific types of requests
• Provides its services to Web server in way that
is totally transparent to client browser
Web-to-Database Middleware: Server-
side Extensions (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Server Interfaces
• Two well-defined Web server interfaces:
– Common Gateway Interface (CGI)
– Application programming interface (API)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Server Interfaces (Continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
The Web Browser
• Software that lets users navigate (browse)
Web
• Located in client computer
• End-user interface to World Wide Web
• Interprets HTML code received from Web
server
• The Web is a stateless system – at any given
time, a Web server does not know the status
of any of the clients communicating with it.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Client-Side Extensions
• Client-side extensions add functionality to the
Web browser. Although client-side extensions
are available in various forms, the most
commonly encountered extensions are:
– Plug-ins.
– Java and JavaScript.
– ActiveX and VBScript.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Application Servers
• A Web application server is a middleware
application that expands the functionality of
Web servers by linking them to a wide range
of services, such as databases, directory
systems, and search engines.
• The Web application server also provides a
consistent run-time environment for Web
applications.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Application Servers (Continued)
• Web application servers can be used to perform the
following:
– Connect to and query a database from a Web page.
– Present database data in a Web page using various
formats.
– Create dynamic Web search pages.
– Create Web pages to insert, update, and delete database
data.
– Enforce referential integrity in the application program
logic.
– Use simple and nested queries and programming logic to
represent business rules.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Application Servers (Continued)
• Web application servers provide features such as:
– An integrated development environment with session
management and support for persistent application variables
– Security and authentication of users through user IDs and
passwords
– Computational languages to represent and store business logic
in the application server
– Automatic generation of HTML pages integrated with Java,
JavaScript, VBScript, ASP, and so on
– Performance and fault-tolerant features
– Database access with transaction management capabilities
– Access to multiple services, such as file transfers (FTP), database
connectivity, e-mail, and directory services
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Database Development
• LAMP is made up of the Linux operating system,
Apache web server, MySQL database and the PHP
programming language (although Perl and Python
can be used instead of PHP).
• Often used within organisations which need an
effective way of managing organisational data but
do not have the time or money to invest in a large
scale costly development web development
projects.
• LAMP allows web developers to build efficient
web applications that are reliable and stable.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Web Database Development (Continued)
Web Database Development (Continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Extensible Markup Language (XML)
• Extensible Markup Language (XML) is a
metalanguage used to represent and
manipulate data elements.
• XML is designed to facilitate the exchange of
structured documents, such as orders and
invoices, over the Internet.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Extensible Markup Language (XML)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Document Type Definitions (DTD) and
XML Schemas
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Document Type Definitions (DTD) and
XML Schemas (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Document Type Definitions (DTD) and
XML Schemas (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Document Type Definitions (DTD)
and XML Schemas (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
XML Presentation
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
XML Presentation (continued)
XML Presentation (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
XML Applications
• B2B exchanges
• Legacy systems integration
• Web page development
• Database support
• Database metadictionaries
• XML databases
• XML services
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
SQL/XML and XQuery
• SQL/XML and XQuery are two standard querying languages
which are used to retrieve data from a relational database in
the XML format.
• SQL/XML is an extension of SQL that is part of ANSI/
• ISO SQL 2011 and is often referred to as being SQL-centric.
This is because only small additions have been made to the
standard SQL language.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
SQL/XML and XQuery (continued)
• The xmlelement() function can be
incorporated into the SQL statement like this:
SELECT XMLELEMENT(NAME ‘VENDOR’,
XMLELEMENT(NAME ‘VEND_CODE’, V.VENDCODE),
XMLELEMENT(NAME ‘VENDOR_NAME’, V.VEND_CONTACT),
XMLELEMENT(NAME ‘VEND_AREACODE’, V.VEND_AREACODE))
FROM VENDOR V;
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
SQL/XML and XQuery (continued)
• Each row returned by the query corresponds to one VENDOR
element and which is represented as
<VENDOR>
<VEND_CODE>230</VEND_CODE>
<VENDOR_NAME>Shelly K. Smithson</VENDOR_NAME>
<VEND_AREACODE>7325</VEND_AREACODE>
</VENDOR>
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Cloud Computing Services
• According to the National Institute of Standards and
Technology (NIST), cloud computing is “a computing
model for enabling ubiquitous, convenient, on-demand
network access to a shared pool of configurable
computer resources (e.g., networks, servers, storage,
applications and services) that can be rapidly
provisioned and released with minimal management
effort or service provider interaction.”
• The term cloud services is used in this book to refer to
the services provided by cloud computing.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Cloud Computing Services (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Cloud Computing Services (continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Cloud Implementation Types
• Public cloud. This type of cloud infrastructure is
built by a third-party organisation to sell cloud
services to the general public.
• Private cloud. This type of internal cloud is built
by an organisation for the sole purpose of
servicing its own needs.
• Community cloud. This type of cloud is built by
and for a specific group of organisations that
share a common trade, such as agencies of the
federal government, the military, or higher
education.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Characteristics of Cloud Services
• Ubiquitous access via Internet technologies.
• Shared infrastructure.
• Lower costs and variable pricing.
• Flexible and scalable services.
• Dynamic provisioning
• Service orientation.
• Managed Operations
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Types of Cloud Services
• Software as a Service (SaaS).
• Platform as a Service (PaaS).
• Infrastructure as a Service (IaaS).
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Types of Cloud Services (Continued)
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Advantages and Disadvantages
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
SQL Data Services
• SQL data services (SDS) refers to a cloud
computing-based data management service
that provides relational data storage, access,
and management to companies of all sizes
without the typically high costs of in-house
hardware, software, infrastructure, and
personnel.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
SQL Data Services (Continued)
• Benefits:
– Hosted data management.
– Standard protocols
– A common programming interface
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
SQL Data Services (Continued)
• SQL data services offer the following advantages
when compared with in-house systems:
– Highly reliable and scalable relational database for a
fraction of the cost
– High level of failure tolerance because data are
normally distributed and replicated among multiple
servers
– Dynamic and automatic load balancing
– Automated data backup and disaster recovery
included with the service
– Dynamic creation and allocation of database
processes and storage
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
The Semantic Web
• The Semantic Web was conceived by Tim Berners-Lee
• In 2001, he published his initial vision of the future of
the WWW as
• “If the interaction between person and hypertext could
be so intuitive that the machine-readable information
space gave an accurate representation of the state of
people's thoughts, interactions, and work patterns,
then machine analysis could become a very powerful
management tool, seeing patterns in our work and
facilitating our working together through the typical
problems which beset the management of large
organisations.”1
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
The Semantic Web (continued)
• Today, the semantic web is often referred to as a Web of data
• Research and work on the sematic web is on-going and led by the
W3C in collaboration with researchers and industry .
3
• The aim is to produce a framework which allows all data to be
shared and reused across applications, without any boundaries.
• The framework will establish common formats for integration and
combination of data from different sources and develop a language
for modelling how data relates to real world objects.
• The framework is based upon the on the Resource Description
Framework (RDF) which is a model that has a number of features
for interchanging data over the WWW.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Summary
• Database connectivity refers to the mechanisms through
which application programs connect and communicate with
data repositories
• Microsoft database connectivity interfaces are dominant
players in the market and enjoy the support of most database
vendors
• Native database connectivity refers to the connection
interface that is provided by the database vendor and is
unique to that vendor
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Summary (continued)
• Object Linking and Embedding for Database (OLE-DB) is a
database middleware developed with the goal of adding
object-oriented functionality for access to relational and non-
relational data
• Database access through the Web is achieved through
database-to-middleware software
• The Semantic Web, often referred to as a Web of data, is a
framework that allows all data on the WWW to be shared and
reused across applications, without any boundaries.
Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett
©2020 Cengage EMEA
Summary (continued)
• Extensible Markup Language (XML) facilitates the exchange of B2B
and other data over the Internet
• XML provides the semantics that facilitates the exchange, sharing,
and manipulation of structured documents across organisational
boundaries
• Cloud computing is a computing model that provides ubiquitous,
on-demand access to a shared pool of configurable resources that
can be rapidly provisioned. SQL data services (SDS) refers to a cloud
computing-based data management service that provides relational
data storage, ubiquitous access, and local management to
companies of all sizes.
– This service enables rapid application development for
businesses with limited information technology resources. SDS
allows rapid deployment of business solutions using standard
protocols and common programming interfaces.

More Related Content

PPTX
1 introduction
PDF
Advanced database protocols
DOC
Foundry Management System Desktop Application
DOCX
Actively looking for an opportunity to work as a challenging Dot Net Developer
DOCX
Actively looking for an opportunity to work as a challenging Dot Net Developer
PPT
Impact 2014 Best practices for_cics_soa_co
PDF
Metadata describes about data
PPTX
Programming is Fun with ASP.NET MVC
1 introduction
Advanced database protocols
Foundry Management System Desktop Application
Actively looking for an opportunity to work as a challenging Dot Net Developer
Actively looking for an opportunity to work as a challenging Dot Net Developer
Impact 2014 Best practices for_cics_soa_co
Metadata describes about data
Programming is Fun with ASP.NET MVC

Similar to INF3703 - Chapter 17 Database Connectivity Web Technologies (20)

PPT
Database connectivity and web technologies
DOCX
Resume Vikram_S
PDF
Cloud Native Patterns with Bluemix Developer Console
PPS
Sreerag dot net - objectives & architecture
PDF
External - IT Specialist
PPT
SAP BusinessObject's Webi Rich Client
PPT
Real Time, Web 2.0, and Grid Systems
PDF
Database@Home : Data Driven Apps : Core-dev or Low Code UI
PDF
Moving OBIEE to Oracle Analytics Cloud
PPTX
Connecting to Data from Windows Phone 8
DOCX
A ____________ is a disconnected, memory-resident representation o.docx
DOC
Microsoft data access components
PDF
Ashish tripath
PPT
Dot net training-navimumbai
DOCX
Pro lab synopsis (body)
PDF
IoT Physical Servers and Cloud Offerings.pdf
PPT
Technology Overview
PPTX
Summer Training PPT on Web development from digipaath private limited
PDF
Important Backend Frameworks To Remember For Businesses In 2023
PPT
Yemo_Capstone_MS_Fairfield University
Database connectivity and web technologies
Resume Vikram_S
Cloud Native Patterns with Bluemix Developer Console
Sreerag dot net - objectives & architecture
External - IT Specialist
SAP BusinessObject's Webi Rich Client
Real Time, Web 2.0, and Grid Systems
Database@Home : Data Driven Apps : Core-dev or Low Code UI
Moving OBIEE to Oracle Analytics Cloud
Connecting to Data from Windows Phone 8
A ____________ is a disconnected, memory-resident representation o.docx
Microsoft data access components
Ashish tripath
Dot net training-navimumbai
Pro lab synopsis (body)
IoT Physical Servers and Cloud Offerings.pdf
Technology Overview
Summer Training PPT on Web development from digipaath private limited
Important Backend Frameworks To Remember For Businesses In 2023
Yemo_Capstone_MS_Fairfield University
Ad

More from bloeyyy (6)

PDF
INF3703 - Chapter 15 Databases For Business Intelligence
PDF
INF3703 - Chapter 14 Distributed Databases
PDF
INF3703 - Chapter 13 Managing Database SQL Performance
PDF
INF3703 - Chapter 12 Managing Transactions Concurrency
PDF
INF3703 - Chapter 11 Conceptual Logical Physical DB Design
PDF
INF3703 - Chapter 10 Database Development Process
INF3703 - Chapter 15 Databases For Business Intelligence
INF3703 - Chapter 14 Distributed Databases
INF3703 - Chapter 13 Managing Database SQL Performance
INF3703 - Chapter 12 Managing Transactions Concurrency
INF3703 - Chapter 11 Conceptual Logical Physical DB Design
INF3703 - Chapter 10 Database Development Process
Ad

Recently uploaded (20)

PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
KodekX | Application Modernization Development
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Encapsulation theory and applications.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Cloud computing and distributed systems.
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
MYSQL Presentation for SQL database connectivity
Reach Out and Touch Someone: Haptics and Empathic Computing
Spectral efficient network and resource selection model in 5G networks
Mobile App Security Testing_ A Comprehensive Guide.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Encapsulation_ Review paper, used for researhc scholars
Network Security Unit 5.pdf for BCA BBA.
20250228 LYD VKU AI Blended-Learning.pptx
KodekX | Application Modernization Development
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
Building Integrated photovoltaic BIPV_UPV.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
NewMind AI Weekly Chronicles - August'25 Week I
Encapsulation theory and applications.pdf
Machine learning based COVID-19 study performance prediction
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Cloud computing and distributed systems.
Review of recent advances in non-invasive hemoglobin estimation
Agricultural_Statistics_at_a_Glance_2022_0.pdf
MYSQL Presentation for SQL database connectivity

INF3703 - Chapter 17 Database Connectivity Web Technologies

  • 1. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Database Principles Fundamentals of Design, Implementation, and Management Carlos Coronel, Steven Morris, Keeley Crockett, Craig Blewett CHAPTER 17 DATABASE CONNECTIVITY AND WEB TECHNOLOGIES
  • 2. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA In this chapter, you will learn: • About the different database connectivity technologies • What Extensible Markup Language (XML) is and why it is important for Web database development • About the functionality and features of various database connectivity technologies: ODBC, OLE, ADO.NET and JDBC • What services are provided by Web application servers • About cloud computing and how it enables the database-as-a- service model. • About the Semantic Web
  • 3. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Database Connectivity • Refers to mechanisms through which application programs connect and communicate with data repositories • Databases store data in persistent storage structures so that they can be retrieved at a later time for processing • Database connectivity software works in a client/server architecture, in which processing tasks are split among multiple software layers
  • 4. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Native SQL Connectivity • Refers to connection interface that is provided by database vendor and is unique to that vendor • Best example of that type of native interface is Oracle RDBMS – To connect client application to Oracle database, you must install and configure Oracle’s SQL*Net interface in client computer
  • 5. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Native SQL Connectivity (continued)
  • 6. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ODBC, DAO,RDO and UDA • Open Database Connectivity (ODBC) – Microsoft’s implementation of a superset of SQL Access Group Call Level Interface (CLI) standard for database access – Probably most widely supported database connectivity interface – Allows any Windows application to access relational data sources, using SQL via standard application programming interface (API)
  • 7. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ODBC, DAO, and RDO (continued) • Data Access Objects (DAO) – Microsoft's API that allows access to the Microsoft Access database. – DAO was Microsoft's first object-oriented API. However, while DAO is still widely used there is a move towards ActiveX Data Objects (ADO).
  • 8. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ODBC, DAO, and RDO (continued) • Remote Data Objects (RDO) – was a higher level object-oriented application interface primarily used in Microsoft Visual Basic. – allowed developers to interface directly with ODBC data sources. • Microsoft's Universal Data Access (UDA) – a new framework – UDA is designed to bring about a single uniform API that will allow access to relational and non-relational databases.
  • 9. ODBC, DAO, and RDO (continued)
  • 10. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ODBC, DAO, RDO and UDA (continued) • Basic ODBC architecture has three main components: – High-level ODBC API through which application programs access ODBC functionality – Driver manager that is in charge of managing all database connections – ODBC driver that communicates directly to DBMS
  • 11. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ODBC, DAO, RDO and UDA (continued)
  • 12. ODBC, DAO, RDO and UDA (continued)
  • 13. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA OLE-DB • Object Linking and Embedding for Database (OLE-DB) • Database middleware that adds object-oriented functionality for access to relational and non-relational data • Composed of series of COM objects that provide low-level database connectivity for applications • OLE-DB model is better understood when you divide its functionality into following types of objects: – Consumers – Providers
  • 14. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA OLE-DB (continued)
  • 15. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA OLE-DB (continued) • OLE-DB did not provide support for scripting languages • ActiveX Data Objects (ADO) provides high- level application-oriented interface to interact with OLE-DB, DAO, and RDO • ADO provides unified interface to access data from any programming language that uses the underlying OLE-DB objects
  • 17. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ADO.NET • ADO.NET is data access component of Microsoft’s .NET application development framework • Introduced two new features critical for development of distributed applications: DataSets and XML support – DataSet is disconnected memory-resident representation of database – DataSet is internally stored in XML format and data in DataSet can be made persistent as XML documents
  • 18. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ADO.NET (continued)
  • 19. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA ADO.NET (continued) • ADO.NET comes with two standard data providers: – Data provider for OLE-DB data sources – Data Provider for SQL Server • No matter data provider, it must support set of specific objects in order to manipulate data in data source – Connection – Command – DataReader – DataAdapter – DataSet – DataTable
  • 20. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Java Database Connectivity (JDBC) • Java Database Connectivity (JDBC) is an application programming interface that allows a Java program to interact with a wide range of data sources, including relational databases, tabular data sources, spreadsheets, and text files. • JDBC allows a Java program to establish a connection with a data source, prepare and send the SQL code to the database server, and process the result set.
  • 21. Java Database Connectivity (JDBC) (Continued)
  • 22. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA PHP • PHP or Hypertext Preprocessor, is a widely-used general-purpose scripting language that is especially • suited for web development and is seen as an alternative to Microsoft’s ASP. • A Server-Side Scripting Language, which means that it is interpreted on the web server before the webpage • is sent to a web browser to be displayed. • PHP supports connectivity to a number of different databases through specific database extensions in the case of MySql to connecting through ODBC extensions for ORACLE.
  • 23. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Database Internet Connectivity • Web database connectivity allows new innovative services that: – Permit rapid response to competitive pressures by bringing new services and products to market quickly – Increase customer satisfaction through creation of Web-based support services – Allow anywhere, anytime data access using mobile smart devices via the internet. – give fast and effective information dissemination through universal access from across street or across globe
  • 24. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Internet Databases (continued)
  • 25. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web-to-Database Middleware: Server-Side Extensions • Also known as Web-to-database middleware • Program that interacts directly with Web server to handle specific types of requests • Provides its services to Web server in way that is totally transparent to client browser
  • 27. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Server Interfaces • Two well-defined Web server interfaces: – Common Gateway Interface (CGI) – Application programming interface (API)
  • 28. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Server Interfaces (Continued)
  • 29. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA The Web Browser • Software that lets users navigate (browse) Web • Located in client computer • End-user interface to World Wide Web • Interprets HTML code received from Web server • The Web is a stateless system – at any given time, a Web server does not know the status of any of the clients communicating with it.
  • 30. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Client-Side Extensions • Client-side extensions add functionality to the Web browser. Although client-side extensions are available in various forms, the most commonly encountered extensions are: – Plug-ins. – Java and JavaScript. – ActiveX and VBScript.
  • 31. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Application Servers • A Web application server is a middleware application that expands the functionality of Web servers by linking them to a wide range of services, such as databases, directory systems, and search engines. • The Web application server also provides a consistent run-time environment for Web applications.
  • 32. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Application Servers (Continued) • Web application servers can be used to perform the following: – Connect to and query a database from a Web page. – Present database data in a Web page using various formats. – Create dynamic Web search pages. – Create Web pages to insert, update, and delete database data. – Enforce referential integrity in the application program logic. – Use simple and nested queries and programming logic to represent business rules.
  • 33. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Application Servers (Continued) • Web application servers provide features such as: – An integrated development environment with session management and support for persistent application variables – Security and authentication of users through user IDs and passwords – Computational languages to represent and store business logic in the application server – Automatic generation of HTML pages integrated with Java, JavaScript, VBScript, ASP, and so on – Performance and fault-tolerant features – Database access with transaction management capabilities – Access to multiple services, such as file transfers (FTP), database connectivity, e-mail, and directory services
  • 34. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Database Development • LAMP is made up of the Linux operating system, Apache web server, MySQL database and the PHP programming language (although Perl and Python can be used instead of PHP). • Often used within organisations which need an effective way of managing organisational data but do not have the time or money to invest in a large scale costly development web development projects. • LAMP allows web developers to build efficient web applications that are reliable and stable.
  • 35. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Web Database Development (Continued)
  • 37. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Extensible Markup Language (XML) • Extensible Markup Language (XML) is a metalanguage used to represent and manipulate data elements. • XML is designed to facilitate the exchange of structured documents, such as orders and invoices, over the Internet.
  • 38. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Extensible Markup Language (XML)
  • 39. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Document Type Definitions (DTD) and XML Schemas
  • 40. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Document Type Definitions (DTD) and XML Schemas (continued)
  • 41. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Document Type Definitions (DTD) and XML Schemas (continued)
  • 42. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Document Type Definitions (DTD) and XML Schemas (continued)
  • 43. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA XML Presentation
  • 44. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA XML Presentation (continued)
  • 46. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA XML Applications • B2B exchanges • Legacy systems integration • Web page development • Database support • Database metadictionaries • XML databases • XML services
  • 47. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA SQL/XML and XQuery • SQL/XML and XQuery are two standard querying languages which are used to retrieve data from a relational database in the XML format. • SQL/XML is an extension of SQL that is part of ANSI/ • ISO SQL 2011 and is often referred to as being SQL-centric. This is because only small additions have been made to the standard SQL language.
  • 48. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA SQL/XML and XQuery (continued) • The xmlelement() function can be incorporated into the SQL statement like this: SELECT XMLELEMENT(NAME ‘VENDOR’, XMLELEMENT(NAME ‘VEND_CODE’, V.VENDCODE), XMLELEMENT(NAME ‘VENDOR_NAME’, V.VEND_CONTACT), XMLELEMENT(NAME ‘VEND_AREACODE’, V.VEND_AREACODE)) FROM VENDOR V;
  • 49. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA SQL/XML and XQuery (continued) • Each row returned by the query corresponds to one VENDOR element and which is represented as <VENDOR> <VEND_CODE>230</VEND_CODE> <VENDOR_NAME>Shelly K. Smithson</VENDOR_NAME> <VEND_AREACODE>7325</VEND_AREACODE> </VENDOR>
  • 50. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA
  • 51. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Cloud Computing Services • According to the National Institute of Standards and Technology (NIST), cloud computing is “a computing model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computer resources (e.g., networks, servers, storage, applications and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” • The term cloud services is used in this book to refer to the services provided by cloud computing.
  • 52. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Cloud Computing Services (continued)
  • 53. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Cloud Computing Services (continued)
  • 54. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Cloud Implementation Types • Public cloud. This type of cloud infrastructure is built by a third-party organisation to sell cloud services to the general public. • Private cloud. This type of internal cloud is built by an organisation for the sole purpose of servicing its own needs. • Community cloud. This type of cloud is built by and for a specific group of organisations that share a common trade, such as agencies of the federal government, the military, or higher education.
  • 55. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Characteristics of Cloud Services • Ubiquitous access via Internet technologies. • Shared infrastructure. • Lower costs and variable pricing. • Flexible and scalable services. • Dynamic provisioning • Service orientation. • Managed Operations
  • 56. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Types of Cloud Services • Software as a Service (SaaS). • Platform as a Service (PaaS). • Infrastructure as a Service (IaaS).
  • 57. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Types of Cloud Services (Continued)
  • 58. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Advantages and Disadvantages
  • 59. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA SQL Data Services • SQL data services (SDS) refers to a cloud computing-based data management service that provides relational data storage, access, and management to companies of all sizes without the typically high costs of in-house hardware, software, infrastructure, and personnel.
  • 60. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA SQL Data Services (Continued) • Benefits: – Hosted data management. – Standard protocols – A common programming interface
  • 61. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA SQL Data Services (Continued) • SQL data services offer the following advantages when compared with in-house systems: – Highly reliable and scalable relational database for a fraction of the cost – High level of failure tolerance because data are normally distributed and replicated among multiple servers – Dynamic and automatic load balancing – Automated data backup and disaster recovery included with the service – Dynamic creation and allocation of database processes and storage
  • 62. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA The Semantic Web • The Semantic Web was conceived by Tim Berners-Lee • In 2001, he published his initial vision of the future of the WWW as • “If the interaction between person and hypertext could be so intuitive that the machine-readable information space gave an accurate representation of the state of people's thoughts, interactions, and work patterns, then machine analysis could become a very powerful management tool, seeing patterns in our work and facilitating our working together through the typical problems which beset the management of large organisations.”1
  • 63. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA The Semantic Web (continued) • Today, the semantic web is often referred to as a Web of data • Research and work on the sematic web is on-going and led by the W3C in collaboration with researchers and industry . 3 • The aim is to produce a framework which allows all data to be shared and reused across applications, without any boundaries. • The framework will establish common formats for integration and combination of data from different sources and develop a language for modelling how data relates to real world objects. • The framework is based upon the on the Resource Description Framework (RDF) which is a model that has a number of features for interchanging data over the WWW.
  • 64. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Summary • Database connectivity refers to the mechanisms through which application programs connect and communicate with data repositories • Microsoft database connectivity interfaces are dominant players in the market and enjoy the support of most database vendors • Native database connectivity refers to the connection interface that is provided by the database vendor and is unique to that vendor
  • 65. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Summary (continued) • Object Linking and Embedding for Database (OLE-DB) is a database middleware developed with the goal of adding object-oriented functionality for access to relational and non- relational data • Database access through the Web is achieved through database-to-middleware software • The Semantic Web, often referred to as a Web of data, is a framework that allows all data on the WWW to be shared and reused across applications, without any boundaries.
  • 66. Database Principles 3rd Ed., Coronel, Morris, Crockett, Blewett ©2020 Cengage EMEA Summary (continued) • Extensible Markup Language (XML) facilitates the exchange of B2B and other data over the Internet • XML provides the semantics that facilitates the exchange, sharing, and manipulation of structured documents across organisational boundaries • Cloud computing is a computing model that provides ubiquitous, on-demand access to a shared pool of configurable resources that can be rapidly provisioned. SQL data services (SDS) refers to a cloud computing-based data management service that provides relational data storage, ubiquitous access, and local management to companies of all sizes. – This service enables rapid application development for businesses with limited information technology resources. SDS allows rapid deployment of business solutions using standard protocols and common programming interfaces.