18th Chapter-delphi Client Server application development (i) (2)

Source: Internet
Author: User
Tags definition

18.1.1.4 Middleware Overview

Middleware is a software layer that protects application developers from the impact of various communication protocols, operating systems, and database management systems. It lays the groundwork for a new application that can coexist with previously inherited applications.

There are several types of middleware. They include application design interfaces (APIs), remote procedure Calls (RPC), network communications, database access, and computer-aided software engineering (case) tools.

Application design is complex because the client/server system needs to integrate machines and technologies from a variety of different architectures. Selecting the appropriate middleware eliminates the hassle of programming designers writing code for each individual protocol and operating system.

18.1.2 relational database architecture and client/server model

18.1.2.1 Relational Database Overview

A relational database is defined as a special database in which each file (called a relationship) holds data in the form of a flat file (flatfiles) or a table. A table must contain only one record type. Each record has a fixed number of fields, and all fields are named. The contents of the fields within the table are different and no repeating groups (repeating groups) are allowed. Does not contain replication records and scheduled record sequences.

When you construct a relational database, you must pay special attention to the content of the relationship and the intrinsic connection between the attributes (fields) of the record.

The basic operations on a relational database are selection, projection, connection, and division, and you choose to create a new table that contains the same number of columns as the original relationship, but the rows include only those original relationship rows that meet some of the feature criteria. The projection operation specifies the column to be selected, thus forming a table that contains only a subset of the original table columns. If there are two rows in the column that are deleted by the projection operation, only one record will be transferred to the new relationship. A JOIN operation combines information from two or more tables. Common fields in two tables are used as the underlying fields for grouped records. Records with equal values in a common field are connected within the resulting relationship.

Tasks implemented by 18.1.2.2 relational database

The tasks involved in implementing a relational database are grouped into three groups:

Tasks for defining the database structure for a DBMS

Tasks for assigning a database to physical storage media

Tasks for establishing database data

The methods for performing these tasks depend on the DBMS product being used.

Various DBMS products provide utilities that define the structure of the database. These utilities use a specialized data definition language (DDL). Some DBMS products contain provisions that once the database has been defined to the DBMS, the database is assigned to physical media. Depending on the characteristics of the application processing, the data can be positioned on the specified table or positioned on the same disk. Some of its DBMS products focus on the establishment of database data.

As noted above, database definition, storage allocation, and data establishment processes will all depend on the application requirements and the characteristics of the particular DBMS product selected.

18.1.2.3 Relational Data manipulation

In order to develop database applications, a language is needed to express the processing logic. There are four types of relational data manipulation languages:

Relational algebra, which is a language that provides a set of remote operators to deal with relationships in relational databases

Relational calculus, which is a language in which users specify a set of results from data operations within a relational database

Translation-oriented languages, which form a class of non-procedural languages that transform the input data that is represented as a relationship into the results expressed as a single relationship. SQL is a translation-oriented language

Graphics-oriented systems that provide users with a graph of relational structures, such as Borland's paradox and IBM's QBE (Query by Example)

Users can use a variety of methods to contact the relational database:

Some DBMS products, including tools to generate tables and provide table and report processing

Provides an interface through the query language that performs query and update functions; The most important query language is SQL

The third way to contact a relational database is through the application

18.1.2.4 Extended Relationship System

A large number of vendors are actively expanding the relationship model. These extensions include storing complex data types, stored procedures, triggers, and binary large Objects (BLOBs) in relational tables. The SQL extensions currently being considered in the SQL 3 standard will include further support for objects, and may include support for user-defined data types and nested tables. Products that provide object extensions to the relational model include Sybase, Informix, Oracle, and Borland.

18.1.2.5 SQL: Basic links for integrating client/server architectures

SQL provides a basic link for the integrated client/server architecture discussed earlier. At present, the U.S. National Standards Office (ANSI) has recognized SQL as the operational database of the formal industry standards. It is the data access language used by many database management system (DBMS) products.

SQL allows users to query on relational table data, create new tables, access existing remote tables, manipulate data, build applications to access SQL data, run SQL statements, handle errors, and access multiple servers. The SQL database server is a multiuser relational database management system (DBMS).

SQL can be used as a query language for interactive use or embedding in applications. When executing a query, SQL accepts one or more relationships as input and produces a relationship as output, resulting in a table or flat file, such as a batch of records of the same type that does not contain a repeating group. When querying multiple tables, SQL joins the tables. SQL also contains provisions for inserting new data into a table, deleting data from a table, or modifying data in a table.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.