the system aims at the maintenance and

Upload: puspala-manojkumar

Post on 30-May-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 The System Aims at the Maintenance And

    1/116

    E-Zest

  • 8/14/2019 The System Aims at the Maintenance And

    2/116

    Chapter 1

  • 8/14/2019 The System Aims at the Maintenance And

    3/116

    Abstract

  • 8/14/2019 The System Aims at the Maintenance And

    4/116

    The system aims at the maintenance and management of the different

    accommodations that are available in the different parts of the world.

    It mainly takes care of the resort management at the core area of the

    database. The system provides the information regarding the

    different resorts that are available and their status specific to

    availability. The database also manages the atomic information

    regarding the different units that are available under one resort and

    the architectural details of the Unit facilities that are available. Each

    unit is well furnished and is well designed for the basic flexibility of

    the tourists who are expected to stay.

    The guests can visit the site and register themselves with the required

    information that is expected by the system. Each registered guest

    can raise a request for the unit bookings. The Guests are scheduled

    with the information of the availability of the units for they have

    requested the time. The Units maintenance is automated for proper

    management of the availability status of the units or the scheduled

    expected date of their availability in near future. The system provides

    the facility for booking of the required available units as per the

    number that is available.

    The system totally built upon the standards of Three Tier Architecture with

    Client, Business and Data Tiers associated as separate layers, with

    specification to high cohesion and loose Coupling Standards for easy

    maintenance.

  • 8/14/2019 The System Aims at the Maintenance And

    5/116

    The entire project has been develped keeping in view of the Distributed client

    server computing technology in mind.The specification have been

    normalized upto 3NF to eliminate all the anomalies that may arise

    due to the database transactions that are executed by the actual

    administration and users.The user interfaces are browser specific to

    give distributed accessability for the overall system.The internal

    database has beeb selected as Oracle 8i.The basic constructs of the

    tablespaces, clusters and indexes have been exploited to provide

    higher consistency and reliability for the data storage.The oracle 9i

    was a choice as it provides the constructs of high level reliabiity and

    security.The total front end was dominated using HTML standards

    applied with the dynamism of JAVA server pages. Thecommunicatin

    client was designed using servlets and JSPs. At all proper levels high

    care was taken to check that the system manages the date

    consistency with proper business validations.The database

    connectivity was planned using the Java DataBase Connectivity,the

    authorization and authorization was cross checked at all stages.The

    user level accessabiity has been restricted into two zones the

    administrative and the normal user zone.

    The Bean components have been implemented for proper reusability and

    authenticity. The standards of security and date portative mechanism

    have been given a big choice for proper usage. The application takes

    care of different modules and their associated reports which re

    produced as per the applicable strategies and standards that are put

    forwarded by the administrative staff..

  • 8/14/2019 The System Aims at the Maintenance And

    6/116

    Chapter 2

  • 8/14/2019 The System Aims at the Maintenance And

    7/116

    Introduction

  • 8/14/2019 The System Aims at the Maintenance And

    8/116

    The entire project has been develped keeping in view of the Distributed client

    server computing technology in mind.The specification have been normalized

    upto 3NF to eliminate all the anomalies that may arise due to the database

    transactions that are executed by the actual administration and users.The

    user interfaces are browser specific to give distributed accessability for the

    overall system.The internal database has beeb selected as Oracle 8i.The

    basic constructs of the tablespaces,clusters and ridexes have been exploited

    to provide higher consistency and reliability for the data storage.The oracle 8i

    was a choice as it provides the constructs of high level reliabiity and

    security.The total front end was dominated using HTML standards applied

    with the dynamism of JAVA server pages. Thecommunicatin client was

    designed using servlets. At all proper levels high care was taken to checkthat the system manages the date consistency with proper business

    validations.The database connectivity was planned using the Java DataBase

    Connectivity,the authorization and authorization was cross checked at all

    stages.The user level accessabiity has been restricted into two zones the

    administrative and the normal user zone.

  • 8/14/2019 The System Aims at the Maintenance And

    9/116

    About the Organization

  • 8/14/2019 The System Aims at the Maintenance And

    10/116

    Existing Process:

    Guest Visits anyNearest Hostel or

    Motel

    Raiser hisRequest at the

    Clerk for

    Accommodation

    Clerk Searchesthe requiredledgers for

    availability

    If not Available

    IF available put

    the info at theguest ViewGuest may

    compromise withhis requirment

    Guest Check the

    requiredParameters as

    per his

    Convenience

    Guest Not

    Compromised

    If Provided planhis stay

    Leaves fnAnother System

  • 8/14/2019 The System Aims at the Maintenance And

    11/116

    Proposed System:

    The Automated system with distributed architecture can support issues like.

    1) The system maintains the different location that are available and

    registered in a central DB, which leads easy accessibility and consistency.

    2) Each Accommodation available units and all the unit facilities are also

    available at the click of a mouse.

    3) The registration of new guest is online house new guest can make

    them they convenient for registration process on the basic of

    24x7x326days.

    4) The Units can be booked by the Registered guest irrespective of the

    Geographical barriers.

    5) The Guest are provided with upto minute information related to the

    unit availability and their status. From their convenient place.

    6) The decision process in more fastes and more consistent.

    7) The guest have information at their demand related to any unit status

    of their own unit booking status.

  • 8/14/2019 The System Aims at the Maintenance And

    12/116

    Chapter 3

  • 8/14/2019 The System Aims at the Maintenance And

    13/116

    FeasibilityReport

  • 8/14/2019 The System Aims at the Maintenance And

    14/116

    System Analysis Concentration:

    Before planning a replacing for a new system it is essential to have through

    knowledge about the existing system along with estimation of how lost

    computes can be used to make its operations more effective.

    System analysis is the process of collecting and interpreting facts, disposing

    problem and use the information about the existing system, which is also

    called as system study.

    System analysis is about understanding situation but not solving the

    problem.

    System analysis is performed to determine whether a not it is feasible to

    design and information system laved on the policies and plans of an

    organization. To determine the user requirements and to eliminate the

    weakness of the present system a few general requirements are concerned.

    GENERAL REQUIREMENTS:

    The new system should be cost effective

    To improve productivity and service and service.

    To enhance user interface.To improve information presentation and durability.

    To upgrade systems reliability, availability and flexibility.

    To address human factors for better and uses acceptance.

    PROBLEM IN THE CURRENT SYSTEM:

    The present system is presently is an undeveloped form and the manual

    process of the overall system is too clumsy and complicated. The clients in

    the real time consultancy system can be too thick and may need many

    resources to be used upon the system. If the system is developed, in a

    distributed over interface with centralized database is the only solution.

  • 8/14/2019 The System Aims at the Maintenance And

    15/116

    Feasibility Report

    TECHINICAL FEASIBILITY:

    Evaluating the technical feasibility is the trickiest part of a feasibility study.

    This is because, at this point in time, not too many detailed design of the

    system, making it difficult to access issues like performance, costs on (on

    account of the kind of technology to be deployed) etc. A number of issues

    have to be considered while doing a technical

    analysis.

    Understand the different technologies involved in the proposed system:

    Before commencing the project, we have to be very clear about what are the

    technologies that are to be required for the development of the new system.

    Find out whether the organization currently possesses the required

    technologies:

    Is the required technology available with the organization?

    If so is the capacity sufficient?

    For instance Will the current printer be able to handle the new reports and forms

    required for the new system?

  • 8/14/2019 The System Aims at the Maintenance And

    16/116

    OPERATIONAL FEASIBILITY:

    Proposed projects are beneficial only if they can be turned into information

    systems that will meet the organizations operating requirements. Simply

    stated, this test of feasibility asks if the system will work when it is

    developed and installed. Are there major barriers to Implementation? Here

    are questions that will help test the operational feasibility of a project:

    Is there sufficient support for the project from management from users? If

    the current system is well liked and used to the extent that persons will not

    be able to see reasons for change, there may be resistance.

    Are the current business methods acceptable to the user? If they are not,

    Users may welcome a change that will bring about a more operational and

    useful systems.

    Have the user been involved in the planning and development of the project?

    Early involvement reduces the chances of resistance to the system and in

    General and increases the likelihood of successful project.

    Since the proposed system was to help reduce the hardships encountered. In

    the existing manual system, the new system was considered to be

    operational feasible.

    ECONOMIC FEASIBILITY:

    Economic feasibility attempts 2 weigh the costs of developing and

    implementing a new system, against the benefits that would accrue from

    having the new system in place. This feasibility study gives the top

    management the economic justification for the new system.

    A simple economic analysis which gives the actual comparison of costs and

    benefits are much more meaningful in this case. In addition, this proves to

    be a useful point of reference to compare actual costs as the project

    progresses. There could be various types of intangible benefits on account of

    automation. These could include increased customer satisfaction,

  • 8/14/2019 The System Aims at the Maintenance And

    17/116

    improvement in product quality better decision making timeliness of

    information, expediting activities, improved accuracy of operations, better

    documentation and record keeping, faster retrieval of information, better

    employee morale.

    a) Technical Description

    Databases: The total number of databases that were identified to build the

    system is 10.The major part of the Databases is categorized as

    Administrative components and the user components. The administrative

    components are useful is managing the actual master data that may; be

    necessary to maintain the consistency of the system. The administrative

    databases are purely used for the internal organizational needs and

    necessities. The user components are designed to handle the transactional

    state that arise upon the system whenever the general client makes a visit

    onto the system for the sake of the report based information. The user

    components are scheduled to accept parametrical information for the user as

    per the systems necessity.

    GUIs

    For the flexibility of the user, the interface has been developed in graphical

    user interface mode. The normal interface is applied through browser.

    The GUIs at the top level has been categorized as:

    1) Administrative user interface

    2) Customer or general user interface

    The administrative user interface concentrates on the consistent information

    that is practically, pact of the organizational activities and which needs

    proper authentication for the data collection. The interfaces help the visitors

    with all the transactional states like Data insertion, Data deletion and Data

    updating with the data search capabilities.

  • 8/14/2019 The System Aims at the Maintenance And

    18/116

    The general user interface helps the users upon the system in transactions

    through the required services that are provided upon the system. The

    general user interface also helps the ordinary user is managing their own

    information in a customized manner as per their flexibilities.

    Feasibility

    (i) Technical Feasibility

    The system is self-explanatory and does not need any entire sophisticated

    training. The system has been built by concentrating on the graphical user

    interface concepts; the application can also be handled very easily with a

    novice user. The overall time that a user needs to get trained is less than 15

    minutes.

    The system has been added with features of menu driven and button

    interaction methods, which makes him the master as he starts working

    through the environment. As the software that was used for developing thisapplication are very economical and are readily available is the market the

    only time that is lost by the customer is just installation time.

    Time Based:

    In this world of busy schedule with which the industrial professionals are

    getting through this kind of system is a boon for the kind of information they

    can readily access at the tip of their fingers. The Tourist, who intends to

    make a visit to the specific choice of his place, need not enquire about the

    details taking the entire pin physically. The Tourist can just get himself

    connected to the site at his own desk with the respective URL that has been

    allocated for him and can make a wide variety of choices for the

  • 8/14/2019 The System Aims at the Maintenance And

    19/116

    accommodations that are available in the central repository of the existing

    database. The User can have the information of all the units that are

    practically registered along with the facilities that are available with respect

    to every unit. The guest is given free hands to register his information as per

    the practical requirements of the site, such that he can be tracked and

    provided services at the demand that is raised by him.

    The Guest once registered can make multiple visits upon the site as per his

    requirements and enquire for the units availability and the status of his

    previous bookings, if any.

    The Administrators can make easy accessibility of the system from virtually

    anywhere in this world, which facilitates the scope of global or remote

    administration possible. All the consistent transactions are facilitated by the

    administrators only with proper authorization and authentication.

    Cost Based:

    If the physical system is established through a manual process. There is

    much need of stationary that has to be managed and maintained as files, the

    overall system once implemented as a intranet based web application notonly saves the time but also eliminates the latency that can exist within the

    system, and saves the cost of stationary that is an unforeseen overhead

    within the system.

    The base administrative staff at the level of the strategic decision-making is

    greatly relieved for the extensive data search. The administrators are greatly

    benefited by this system, as they need not collect all that information that is

    accessible by only selects that information which is more important for them.

    The administrative standards of the system become more economical as

    there is no need of stationary exchange within the organization. As the

    information governed upon the system maintains statistics related to

  • 8/14/2019 The System Aims at the Maintenance And

    20/116

    information that is collected, the overall system can be used for forecasting

    analysis in the research process.

    In the manual process of the Web Based Accommodation Upholding and

    Maintenance System, the information search and storage needs extra

    manpower assignment, which potentially costs the organization in the

    perennial investment of funds for the sake of the salaries. The information

    interrelations among different areas of the system should be handled

    carefully else the latency upon the overall process of the system increases

    leading to inconvenience.

    SOFTWARE REQUIREMENT SPECIFICATION

    REQUIREMENT SPECIFICATION:

    The software, Web Based Accommodation upholding Maintenance System,

    which is designed for administrating & automating all the major activities

    that are carried out by the Tourists and the Accommodation providing outlets

    as specific requirements arise upon the system.

    INTRODUCTION

    Purpose: The main purpose for preparing this document is to give a general

    insight into the analysis and requirements of the existing system or situation

    and for determining the operating characteristics of the system.

    Scope: This Document plays a vital role in the development life cycle (SDLC)

    As it describes the complete requirement of the system. It is meant for use

    by the developers and will be the basic during testing phase. Any changes

    made to the requirements in the future will have to go through formal

    change approval process.

  • 8/14/2019 The System Aims at the Maintenance And

    21/116

    Developers Responsibilities Overview:

    The developer is responsible for:

    Developing the system, which meets the SRS and solving all the

    requirements of the system?

    Demonstrating the system and installing the system at client's location after

    the acceptance testing is successful.

    Submitting the required user manual describing the system interfaces to

    work on it and also the documents of the system.

    Conducting any user training that might be needed for using the system.

    Maintaining the system for a period of one year after installation.

    Functional Requirements:

    Inputs: The major inputs for Integration of Web based Accommodation

    Upholding Maintenance System can be categorized module -wise. Basically all

    the information is managed by the software and in order to access the

    information one has to produce one's identity by entering the user-id and

    password. Every user has their own domain of access beyond which theaccess is dynamically refrained rather denied.

    Output: The major outputs of the system are tables and reports. Tables are

    created dynamically to meet the requirements on demand. Reports, as it is

    obvious, carry the gist of the whole information that flows across the

    institution.

    This application must be able to produce output at different modules for

    different inputs.

  • 8/14/2019 The System Aims at the Maintenance And

    22/116

    Performance Requirements:

    Performance is measured in terms of reports generated weekly and monthly.

    Intended Audience And Reading Suggestions

    The document is prepared keeping is view of the academic constructs of my

    Bachelors Degree / Masters Degree from university as partial fulfillment of

    my academic purpose the document specifies the general procedure that that

    has been followed by me, while the system was studied and developed. The

    general document was provided by the industry as a reference guide to

    understand my responsibilities in developing the system, with respect to the

    requirements that have been pin pointed to get the exact structure of the

    system as stated by the actual client.

    The system as stated by my project leader the actual standards of the

    specification were desired by conducting a series of interviews and

    questionnaires. The collected information was organized to form the

    specification document and then was modeled to suite the standards of the

    system as intended.

    Document Conventions:

    The overall documents for this project use the recognized modeling

    standards at the software industries level.

    ER-Modeling to concentrate on the relational states existing upon the system

    with respect to Cardinality.

    The Physical dispense, which state the overall data search for the relational

    key whereas a transactions is implemented on the wear entities.

    Unified modeling language concepts to give a generalized blue print for the

    overall system.

    The standards of flow charts at the required states that are the functionality

    of the operations need more concentration.

  • 8/14/2019 The System Aims at the Maintenance And

    23/116

    Scope of The Development Project:

    Database Tier: The concentration is applied by adopting the Oracle 9i

    Enterprise versions. SQL is taken as the standard query language. The

    overall business rules are designed by using the power of PL/SQL

    components like stored procedures stored functions and database triggers.

    User Tier: The use interface is developed is a browses specific environment

    to have distributed architecture. The components are designed using HTML

    standards and Java server pages power the dynamic of the page design.

    Data Base Connectivity Tier: The communication architecture is designed

    by concentrated on the standards of servlets and JSPs. The database

    connectivity is established using the Java Database connectivity.

  • 8/14/2019 The System Aims at the Maintenance And

    24/116

    Chapter 4

  • 8/14/2019 The System Aims at the Maintenance And

    25/116

    Software RequirementSpecification

  • 8/14/2019 The System Aims at the Maintenance And

    26/116

    Required Hardware

    Pentium IV Processor.

    128 MB RAM.

    20GB Hard Disk space.Ethernet card with an Internet and Internet zone.

    Required Software

    Windows 2000 Professional operating system.Internet explorer 5.0 and Netscape navigator.

    Oracle 8i.Servlets

    JSP

    TCP/IP Protocol suite.

  • 8/14/2019 The System Aims at the Maintenance And

    27/116

    Chapter 5

  • 8/14/2019 The System Aims at the Maintenance And

    28/116

    ModulesDescription

  • 8/14/2019 The System Aims at the Maintenance And

    29/116

    Number of Modules:

    Accommodation Information Module

    Units Information Module.

    Bookings Information Module.

    Guests Information Module.

    Facilities Information Module.

    ACCOMMODATION INFORMATION: This module maintains all the details of

    the Accommodation location that are available and the units that are

    available under each location along with their reference unit types.

    UNITS INFORMATION: This module maintains the information regarding allthe units that are registered as per specifications and their reference unit

    types. The module also takes care of the system from the unit facilities and

    reference unit facilities that are available.

    BOOKING MODULE: This module maintains the information of all the booking

    of the units, as pet the guest requirements, it inteplater itself with the units

    station database and the specific registered guest who have raised the

    demand upon the booking.

    GUEST MODULE: This module maintains the overall activities through which a

    guest is uniquely registered is the domain the module interpreter with the

    specific gender status and also centrally sets with interpretation through

    booking and registry to unit status.

    FACILITIES MODULE: This module maintains the overall activities in the

    facilities that are available are provided fn all or some of the specified units.

    This module helps in registering the reference unit facilities that may creep in

    into the system from time to time.

  • 8/14/2019 The System Aims at the Maintenance And

    30/116

    NUMBER OF VIEWS:

    Administrative View

    Guest View

    Administrative View

    This view is designed for interacting with the absolute Meta Data, which

    becomes the ultimate repository to maintain the consistency.

    This view is accessible only to registered administrators who are recognized

    by the Watershed Development central Administration Department.

    This Module takes care of the responsibility of the major Table management

    for

    Data Insertion

    Data Deletion

    Data Updating

    Data Selection

    All the activities are validated and authenticated to proper profile to avoid un

    authorized access.

    Guest View: In this view the guest can view complete details of available

    accommodation list information.

  • 8/14/2019 The System Aims at the Maintenance And

    31/116

    Chapter 6

  • 8/14/2019 The System Aims at the Maintenance And

    32/116

    AnalysisReport

  • 8/14/2019 The System Aims at the Maintenance And

    33/116

    SOFTWARE REQUIREMENT SPECIFICATION

    REQUIREMENT SPECIFICATION:

    INTRODUCTION

    Purpose: The main purpose for preparing this document is to give a general

    insight into the analysis and requirements of the existing system or situation

    and for determining the operating characteristics of the system.

    Scope: This Document plays a vital role in the development life cycle (SDLC)

    as it describes the complete requirement of the system. It is meant for use

    by the developers and will be the basic during testing phase. Any changes

    made to the requirements in the future will have to go through formal

    change approval process.

    Developers Responsibilities Overview:

    The developer is responsible for:

    1) Developing the system, which meets the SRS and solving all the

    requirements of the system?

    2) Demonstrating the system and installing the system at client'slocation after the acceptance testing is successful.

    3) Submitting the required user manual describing the system

    interfaces to work on it and also the documents of the system.

    4) Conducting any user training that might be needed for using the

    system.

    5) Maintaining the system for a period of one year after installation.

    Functional Requirements:

    Inputs: The major inputs for Web Based Accommodation can be categorized

    module-wise. Basically all the information is managed by the software and in

  • 8/14/2019 The System Aims at the Maintenance And

    34/116

    order to access the information one has to produce one's identity by entering

    the user-id and password. Every user has their own domain of access beyond

    which the access is dynamically refrained rather denied.

    Output: The major outputs of the system are tables and reports. Tables are

    created dynamically to meet the requirements on demand. Reports, as it is

    obvious, carry the gist of the whole information that flows across the

    institution. This application must be able to produce output at different

    modules for different inputs.

    Performance Requirements:

    Performance is measured in terms of reports generated weekly and monthly.

    Intended Audience And Reading Suggestions

    The document is prepared keeping is view of the academic constructs of my

    Bachelors Degree / Masters Degree from university as partial fulfillment of

    my academic purpose the document specifies the general procedure that that

    has been followed by me, while the system was studied and developed. The

    general document was provided by the industry as a reference guide to

    understand my responsibilities in developing the system, with respect to therequirements that have been pin pointed to get the exact structure of the

    system as stated by the actual client.

    The system as stated by my project leader the actual standards of the

    specification were desired by conducting a series of interviews and

    questionnaires. The collected information was organized to form the

    specification document and then was modeled to suite the standards of the

    system as intended.

    Document Conventions:

    The overall documents for this project use the recognized modeling

    standards at the software industries level.

  • 8/14/2019 The System Aims at the Maintenance And

    35/116

    ER-Modeling to concentrate on the relational states existing

    upon the system with respect to Cardinality.

    The Physical dispense, which state the overall data search for

    the relational key whereas a transactions is implemented on the

    wear entities.

    Unified modeling language concepts to give a generalized blue

    print for the overall system.

    The standards of flow charts at the required states that are the

    functionality of the operations need more concentration.

    Scope of The Development Project:

    Database Tier: The concentration is applied by adopting the Oracle 8i

    Enterprise versions. SQL is taken as the standard query language. The

    overall business rules are designed by using the power of PL/SQL

    components like stored procedures stored functions and database triggers.

    User Tier: The use interface is developed is a browses specific environment

    to have distributed architecture. The components are designed using HTML

    standards and Java server pages power the dynamic of the page design.

    Data Base Connectivity Tier: The communication architecture is designed

    by concentrated on the standards of servlets and JSPs. The database

    connectivity is established using the Java Database connectivity.

    Role Of Oracle In Database

    ORACLE 8i is one of the many database services that plug into a client /

    server model. It works efficiently to manage resources, a database

    information, among the multiple clients requesting & sending.

    Structured Query Language (SQL)

    SQL is an inter-active language used to query the database and access data

    in database. SQL has the following features:

  • 8/14/2019 The System Aims at the Maintenance And

    36/116

    1. It is a unified language.

    2. It is a common language for relational database

    3. It is a non-procedural language.

  • 8/14/2019 The System Aims at the Maintenance And

    37/116

    Introduction To Oracle

    ORACLE is a comprehensive operating environment that packs the power of a

    mainframe system into user microcomputer. It provides a set of functional

    programs that user can use as tools to build structures and perform tasks.Because application developed on oracle are completely portable to

    environment and then move it into a multi user platform. Users do not have

    to be an expert to appreciate ORACLE, but the better user understands the

    programmer, the more productivity and creativity you will use the tools it

    provides.

    What is a Relational Database Management System?

    A relational database management system (RDBMS) can perform a widearray of tasks. It acts as a transparent interface between the physical

    storage and a logical presentation of data. It provides a set of more or less

    flexible and sophisticates tools for handling information. User can use this

    tool to:

    Define a database

    Query the database

    Add, edit and delete data

    Modify the structure of database

    Secure data from public access

    Communicate within the networks

    Export and Import data

    Because it gives so much control over data, a relational DBMS can also save

    as the foundation for products that generate application and extract data.

    A Database Management system may be called fully relational if it supports:

    Relational Databases and

    A language that is at least as powerful as the

    relational algebra

  • 8/14/2019 The System Aims at the Maintenance And

    38/116

    Dr. E.F.CODDSS RULES

    E.F.Codd specified a set of rules that an RDBMS has to do following

    12 rules

    Information rule: All information in a relational database including

    table names, column names, and domain names is represented explicitly

    by values in tables. With this design speed and productivity will be

    improved.

    1. Guaranteed access rule: using a combination of table name, a

    primary key value and a column name can access Every piece of data

    in a relational database. With this productivity is improved since thereis no need to resort to using physical pointers of address and provides

    data independence.

    2. Systematic treatment of null values: The RDBMS distinguishes

    between blanks nulls in records and handles such values in consistent

    manner that produces correct answers on comparison and calculations.

    With these users can distinguish results of queries/operations that

    involve nulls, zeroes and blanks.

    3. Active on-line catalog based on the relational model: The

    description of a database and its contents are database tables and

    therefore can be queried on-line via the database language. With this

    the DBAs productivity is improved since the changes are common in

    catalog to all tables for all queries and reports.

    4. Comprehensive data sub-language rule: An RDBMS language

    supports definitions of tables/views. Query and update data, integrity

    constraints, authorizations, definitions of transactions. With this user

    productivity is improved since there is a single approach for all

    database operations.

    5. View updating rule: Any view that is theoretically updateable can be

    updated using RDBMS. With this data consistency is ensured since

  • 8/14/2019 The System Aims at the Maintenance And

    39/116

    changes in the underlying tables are transmitted to the view their

    support.

    6. High-level insert, update and delete: The RDBMS supports

    insertion, updating deletion at al table level. With this the performance

    is improved by optimizing the path for execution.

    7. Physical data independence: The execution of adhoc requests and

    application programs are not affected by the changes in the physical

    data access methods. With this DBA can make changes in application

    programs or adhoc requests.

    8. Logical data independence: Logical changes in tables and views do

    not require changes in the application programs or in the format of

    adhoc requests. With this databases can change and grow withoutchanges in applications.

    9. Integrity independence: Since constraints are stored in system

    catalog, they can be changed without changing application program.

    With this maintenance costs are reduced since only system catalog

    need to be changed.

    10.Distribution independence: Application programs and adhoc

    requests are not affected by changes in the distribution of physical

    data. With this system reliability will be improved since applicationprograms will work even if the programs and dare are shifted.

    11.Non-Subversion rule: If the RDBMS has languages that access a

    record of a time it cannot be used to bypass integrity. With this data

    integrity is achieved since the system catalog is musts

    a. Code defined a relationally complete set of operations taking

    one or more relation as their operands. The operators are two

    groups: the traditional set of operators union, intersection,

    difference and Cartesian product and the special operators

    selection, projection, join and division.

    b. A fully relational DBMS has to support the above operations.

  • 8/14/2019 The System Aims at the Maintenance And

    40/116

    The Oracle Environment

    ORACLE is modular system that consists of the ORACLE database and

    several functional programs. ORACLE tools had four kinds of

    works:

    Database management

    Data access and manipulations

    Programming

    Connectivity

    Database Management Tools

    This is usually (known as RDBMS by ORACLE) includes the core programs of

    Oracles database management system, the ORACLE database with its

    associated tables and views, which are stored in the Oracles data dictionary

    and a group of helpful activities. The data dictionary sores information

    related to every facet of database system. User names, user access rights,

    table storage information and auditing data for the disaster recovery are all

    stored in the data dictionary.

    Data Access and Manipulations

    All of Oracles data access and manipulation tools are firmly based on ANSI

    standard SQL. In Oracle, the tools that a user will use to access and

    manipulate data, has well as to design or use applications. Each provides

    separate point of entry and unique speech to the Oracle system. SQL*PLUSallows direct access to database with SQL FORMS offer a user-friendly way to

    create and use forms. SQL*REPORT writer lets you to creates formatted

    output SQL*MENU provides a way for you to integrate your application

    menus.

  • 8/14/2019 The System Aims at the Maintenance And

    41/116

    Oracle Supports Applications Development

    SQL*FORMS is an excellent user-friendly tool for quickly creating forms. User

    can start with extremely simple default forms or use the full screen painting

    function to create detailed screens foe accessing and updating multiple tables

    and for controlling and editing the data as is entered. In SQL FORMS,

    ORACLE provides unique control devices called TRIGGERS to influence user

    action on a field before, during and after date input. Those triggers can

    execute SQL commands, native SQL FORMS commands, or external

    procedural language sub routines from with a form. These forms are an

    advanced fourth-generation tool that wills adapt to your requirementsextremely well. With SQL*MENU you can link all of theforms. Programs and

    queries are easily maintained with the secured menu structures. Oracle Uses

    The SQL Command Set With SQL * Menu you can like all forms, programs

    and queries in easily maintained secure structures.

  • 8/14/2019 The System Aims at the Maintenance And

    42/116

    Oracle provides a SQL command set that is close to the ANSI standard

    ORACLE has added extensive report-formatting commands to

    extend the direct SQL language our capabilities and to delay the

    needs for alternative report formatting techniques. Statistical,

    Arithmetic string date/time functions are also included.

    ORACLE has with limitation. The Single-user does not include all of the tools

    available on the hardware platforms. Also. ORACLE is relatively

    expensive and more complex than more single user, PC-basis

    database managers. ORACLE delivers a comprehensive package

    that allows for unlimited growth.

    Oracle Gives You Security and Control ORACLE has several features that

    ensure the integrity of user database. I f an interruption occurs in

    processing, a rollback can rest the database to a point before the

    disaster. If a restore is necessary, ORACLE has a roll forward

    command for creating a database to its most recent save point.

    Oracle provides users with several functions for serving data.

    Grant and Revoke commands limited access to information down

    to the row and column levels. Views are valuable future for limiting

    access to the primary tables in the database.

    Oracle Performs Completive

  • 8/14/2019 The System Aims at the Maintenance And

    43/116

    ORACLE has been constantly improved to perform competitively on the

    largest database because RDBMS has been hampered by a

    repetition for slow access time. ORACLE had to prove itself

    continuously and so the unique feature of clustering techniques for

    storing data on the disk or another performance gained. Additional

    functions help control complex database installations. The active

    data dictionary, which automatically update and logs modification

    to the database provide documentation data off loading form the

    modification process. Finally, ORACLE stores the DBMS kernel in

    extended memory, so more main memory is available for the

    application.

  • 8/14/2019 The System Aims at the Maintenance And

    44/116

    Programming Tools

    One of the most important categories of tools available from oracle is its

    series of programming interface. This precompiled software

    provides a convenient and easy to use method of incorporatingORACLE SQL statement in high level programming language.

    Current oracle can interface with COBOL and C.

    Connective Tools

    Connectivity tools make oracle available to network and to other database

    managers. SQL * Star is group of products including SQL *NET

    and SQL * connect that allows user to use stores on remote

    machines. A micro based version of oracle called network station

    oracle, user may SQL * NET, instead of oracle RDBMS. SQL *

    Connection does the translating interactively without any

    modification or translations.

    Fourth Generation Languages

    The fourth generation languages were created to overcome the problem of

    third generation languages, and these 4GLs are generally referred

    to as high productivity languages.

    Objectives Of Fourth Generation Languages

    To speed up the application building process

    To make the application building process

    To minimize the debugging problems

    To generate bug free code from high level of expressions of

    requirements.

    To make languages easy to use and understand

    All these make the end users solve their own problems and pit computers to

    work.

    Characteristics of Fourth Generation Languages

    Simple Query facilities/ language

  • 8/14/2019 The System Aims at the Maintenance And

    45/116

    Complex query and updating language

    Report generators

    Graphic languages

    Decision support languages

    Application generations

    Specification language

    Very high level language

    Parameterized application language

    Application language

    Properties of Fourth Generation Languages

    Easy to use

    Employees a database management system directly

    Requires significantly fewer instructions than third

    generation language

    Intelligent default assumptions make abort what the use

    wants possible

    Easy to understand and maintain

    Enforces and encourages structured code

    Subset can learnt not by non-technical users in a short

    period

  • 8/14/2019 The System Aims at the Maintenance And

    46/116

    Chapter

    7

  • 8/14/2019 The System Aims at the Maintenance And

    47/116

    Client ServerTechnologies

  • 8/14/2019 The System Aims at the Maintenance And

    48/116

    Client Server

    Over view:

    With the varied topic in existence in the fields of computers, Client Server is

    one, which has generated more heat than light, and also more hype thanreality. This technology has acquired a certain critical mass attention with its

    dedication conferences and magazines. Major computer vendors such as IBM

    and DEC; have declared that Client Servers is their main future market. A

    survey of DBMS magazine reveled that 76% of its readers were actively

    looking at the client server solution. The growth in the client server

    development tools from $200 million in 1992 to more than $1.2 billion in

    1996.

    Client server implementations are complex but the underlying concept is

    simple and powerful. A client is an application running with local resources

    but able to request the database and relate the services from separate

    remote server. The software mediating this client server interaction is often

    referred to as MIDDLEWARE.

    The typical client either a PC or a Work Station connected through a network

    to a more powerful PC, Workstation, Midrange or Main Frames server usually

    capable of handling request from more than one client. However, with someconfiguration server may also act as client. A server may need to access

    other server in order to process the original client request.

    The key client server idea is that client as user is essentially insulated from

    the physical location and formats of the data needs for their application. With

    the proper middleware, a client input from or report can transparently access

    and manipulate both local database on the client machine and remote

    databases on one or more servers. An added bonus is the client server opens

    the door to multi-vendor database access indulging heterogeneous table

    joins.

  • 8/14/2019 The System Aims at the Maintenance And

    49/116

    What is a Client Server

    Two prominent systems in existence are client server and file server systems.

    It is essential to distinguish between client servers and file server systems.

    Both provide shared network access to data but the comparison dens there!

    The file server simply provides a remote disk drive that can be accessed by

    LAN applications on a file-by-file basis. The clientserver offers full relational

    database services such as SQL-Access, Record modifying, Insert, Delete with

    full relational integrity backup/ restore performance for high volume of

    transactions, etc. the client server middleware provides a flexible interfacebetween client and server, who does what, when and to whom.

    Why Client Server

    Client server has evolved to solve a problem that has been around since the

    earliest days of computing: how best to distribute your computing, data

    generation and data storage resources in order to obtain efficient, costeffective departmental an enterprise wide data processing. During mainframe

    era choices were quite limited. A central machine housed both the CPU and

    DATA (cards, tapes, drums and later disks). Access to these resources was

    initially confined to batched runs that produced departmental reports at the

    appropriate intervals. A strong central information service department ruled

    the corporation. The role of the rest of the corporation limited to requesting

    new or more frequent reports and to provide hand written forms from which

    the central data banks were created and updated. The earliest client serversolutions therefore could best be characterized as SLAVE-MASTER.

  • 8/14/2019 The System Aims at the Maintenance And

    50/116

    Time-sharing changed the picture. Remote terminal could view and even

    change the central data, subject to access permissions. And, as the

    central data banks evolved in to sophisticated relational database

    with non-programmer query languages, online users could formulate

    adhoc queries and produce local reports with out adding to the MIS

    applications software backlog. However remote access was through

    dumb terminals, and the client server remained subordinate to the

    Slave\Master.

    Front end or User Interface Design

    The entire user interface is planned to be developed in browser specific

    environment with a touch of Intranet-Based Architecture for achieving the

    Distributed Concept.

    The browser specific components are designed by using the HTML standards,

    and the dynamism of the designed by concentrating on the constructs of the

    Java Server Pages.

    Communication or Database Connectivity Tier

    The Communication architecture is designed by concentrating on the

    Standards of Servlets and Enterprise Java Beans. The database connectivity

    is established by using the Java Data Base Connectivity.

    The standards of three-tire architecture are given major concentration to

    keep the standards of higher cohesion and limited coupling for effectiveness

    of the operations.

    Features of The Language Used

    In my project, I have chosen Java language for developing the code.

    About Java

    Initially the language was called as oak but it was renamed as Java in

    1995. The primary motivation of this language was the need for a platform-

  • 8/14/2019 The System Aims at the Maintenance And

    51/116

    independent (i.e., architecture neutral) language that could be used to create

    software to be embedded in various consumer electronic devices.

    Java is a programmers language.

    Java is cohesive and consistent.

    Except for those constraints imposed by the Internet

    environment, Java gives the programmer, full control.

    Finally, Java is to Internet programming where C was to

    system programming.

    Importance of Java to the Internet

    Java has had a profound effect on the Internet. This is because; Java

    expands the Universe of objects that can move about freely in Cyberspace.

    In a network, two categories of objects are transmitted between the Server

    and the Personal computer. They are: Passive information and Dynamic

    active programs. The Dynamic, Self-executing programs cause serious

    problems in the areas of Security and probability. But, Java addresses those

    concerns and by doing so, has opened the door to an exciting new form of

    program called the Applet.

    Java can be used to create two types of programs

    Applications and Applets: An application is a program that runs on our

    Computer under the operating system of that computer. It is more or less

    like one creating using C or C++. Javas ability to create Applets makes it

    important. An Applet is an application designed to be transmitted over the

    Internet and executed by a Java compatible web browser. An applet is

    actually a tiny Java program, dynamically downloaded across the network,

  • 8/14/2019 The System Aims at the Maintenance And

    52/116

    just like an image. But the difference is, it is an intelligent program, not just

    a media file. It can react to the user input and dynamically change.

    Features Of Java Security

    Every time you that you download a normal program, you are risking aviral infection. Prior to Java, most users did not download executable

    programs frequently, and those who did scanned them for viruses prior to

    execution. Most users still worried about the possibility of infecting their

    systems with a virus. In addition, another type of malicious program exists

    that must be guarded against. This type of program can gather private

    information, such as credit card numbers, bank account balances, and

    passwords. Java answers both these concerns by providing a firewall

    between a network application and your computer.

    When you use a Java-compatible Web browser, you can safely download Java

    applets without fear of virus infection or malicious intent.

    Portability

    For programs to be dynamically downloaded to all the various types of

    platforms connected to the Internet, some means of generating portable

    executable code is needed .As you will see, the same mechanism that helps

    ensure security also helps create portability. Indeed, Javas solution to these

    two problems is both elegant and efficient.

    The Byte code

    The key that allows the Java to solve the security and portability problems is

    that the output of Java compiler is Byte code. Byte code is a highly optimized

    set of instructions designed to be executed by the Java run-time system,

    which is called the Java Virtual Machine (JVM). That is, in its standard form,

    the JVM is an interpreter for byte code.

    Translating a Java program into byte code helps makes it much easier to run

    a program in a wide variety of environments. The reason is, once the run-

    time package exists for a given system, any Java program can run on it.

  • 8/14/2019 The System Aims at the Maintenance And

    53/116

    Although Java was designed for interpretation, there is technically nothing

    about Java that prevents on-the-fly compilation of byte code into native

    code. Sun has just completed its Just In Time (JIT) compiler for byte code.

    When the JIT compiler is a part of JVM, it compiles byte code into executable

    code in real time, on a piece-by-piece, demand basis. It is not possible to

    compile an entire Java program into executable code all at once, because

    Java performs various run-time checks that can be done only at run time.

    The JIT compiles code, as it is needed, during execution.

    Java Virtual Machine (JVM)

    Beyond the language, there is the Java virtual machine. The Java virtual

    machine is an important element of the Java technology. The virtual machine

    can be embedded within a web browser or an operating system. Once a piece

    of Java code is loaded onto a machine, it is verified. As part of the loading

    process, a class loader is invoked and does byte code verification makes sure

    that the code thats has been generated by the compiler will not corrupt the

    machine that its loaded on. Byte code verification takes place at the end of

    the compilation process to make sure that is all accurate and correct. So byte

    code verification is integral to the compiling and executing of Java code.

  • 8/14/2019 The System Aims at the Maintenance And

    54/116

    Overall Description

    Picture showing the development process of JAVA Program

    Java programming uses to produce byte codes and executes them. The first

    box indicates that the Java source code is located in a. Java file that is

    processed with a Java compiler called javac. The Java compiler produces a

    file called a. class file, which contains the byte code. The. Class file is then

    loaded across the network or loaded locally on your machine into the

    execution environment is the Java virtual machine, which interprets and

    executes the byte code.

    Java Architecture

    Java architecture provides a portable, robust, high performing environment

    for development. Java provides portability by compiling the byte codes for

    the Java Virtual Machine, which is then interpreted on each platform by the

    run-time environment. Java is a dynamic system, able to load code when

    needed from a machine in the same room or across the planet.

    Compilation of code

    When you compile the code, the Java compiler creates machine code (called

    byte code) for a hypothetical machine called Java Virtual Machine (JVM). The

    JVM is supposed to execute the byte code. The JVM is created for overcoming

    the issue of portability. The code is written and compiled for one machine

    and interpreted on all machines. This machine is called Java Virtual Machine.

    Java Source Java byte code Java VM

    Java .Class

  • 8/14/2019 The System Aims at the Maintenance And

    55/116

    Compiling and interpreting Java Source Code

    During run-time the Java interpreter tricks the byte code file into thinking

    that it is running on a Java Virtual Machine. In reality this could be a Intel

    Pentium Windows 95 or SunSARC station running Solaris or Apple Macintosh

    running system and all could receive code from any computer through

    Internet and run the Applets.

    Simple

    Java was designed to be easy for the Professional programmer to learn and

    to use effectively. If you are an experienced C++ programmer, learning Java

    will be even easier. Because Java inherits the C/C++ syntax and many of the

    object oriented features of C++. Most of the confusing concepts from C++

    are either left out of Java or implemented in a cleaner, more approachable

    manner. In Java there are a small number of clearly defined ways to

    accomplish a given task.

    SourceCode....

    ..

    PC Compiler

    MacintoshCompiler

    SPARC

    Compiler

    Java

    Byte code

    (PlatformIndependent)

    JavaInterpreter(PC)

    JavaInterpreter(Macintosh)JavaInterpreter(Spare)

  • 8/14/2019 The System Aims at the Maintenance And

    56/116

    Object-Oriented

    Java was not designed to be source-code compatible with any other

    language. This allowed the Java team the freedom to design with a blank

    slate. One outcome of this was a clean usable, pragmatic approach toobjects. The object model in Java is simple and easy to extend, while simple

    types, such as integers, are kept as high-performance non-objects.

    Robust

    The multi-platform environment of the Web places extraordinary demands on

    a program, because the program must execute reliably in a variety of

    systems. The ability to create robust programs was given a high priority in

    the design of Java. Java is strictly typed language; it checks your code atcompile time and run time.

    Java virtually eliminates the problems of memory management and

    deallocation, which is completely automatic. In a well-written Java program,

    all run time errors can and should be managed by your program.

  • 8/14/2019 The System Aims at the Maintenance And

    57/116

    Servlets, JSP, JDBC &HTML Technologies

  • 8/14/2019 The System Aims at the Maintenance And

    58/116

    MySQL

    The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,

    and robust SQL (Structured Query Language) database server. MySQL

    Server is intended for mission-critical, heavy-load production systems aswell as for embedding into mass-deployed software. MySQL is a

    trademark ofMySQL AB.

    What Is MySQL?

    MySQL, the most popular Open Source SQL database, is developed,

    distributed, and supported by MySQL AB. MySQL AB is a commercial

    company, founded by the MySQL developers, that builds its businessproviding services around the MySQL database.

    MySQL is a database management system.

    A database is a structured collection of data. It may be anything from a

    simple shopping list to a picture gallery or the vast amounts of

    information in a corporate network. To add, access, and process data

    stored in a computer database, you need a database management system

    such as MySQL Server. Since computers are very good at handling largeamounts of data, database management systems play a central role in

    computing, as stand-alone utilities or as parts of other applications.

    MySQL is a relational database management system.

    A relational database stores data in separate tables rather than putting all

    the data in one big storeroom. This adds speed and flexibility. The SQL

    part of ``MySQL'' stands for ``Structured Query Language''. SQL is the most

    common standardised language used to access databases and is defined

    by the ANSI/ISO SQL Standard.(The SQL standard has been evolving

    since 1986 and several versions exist. In this manual, ''SQL-92'' refers to

    the standard released in 1992, ''SQL-99'' refers to the standard released in

    1999, and ''SQL:2003'' refers to the version of the standard that is

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#What-ishttp://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#What-is
  • 8/14/2019 The System Aims at the Maintenance And

    59/116

    expected to be released in mid-2003.We use the term ''the SQL standard''

    to mean the current version of the SQL Standard at any time.)

    MySQL software is Open Source.

    Open Source means that it is possible for anyone to use and modify the

    software. Anybody can download the MySQL software from the Internet

    and use it without paying anything. If you wish, you may study the source

    code and change it to suit your needs. The MySQL software uses the GPL

    (GNU General Public License), http://www.gnu.org/licenses/, to define what

    you may and may not do with the software in different situations. If you

    feel uncomfortable with the GPL or need to embed MySQL code into a

    commercial application you can buy a commercially licensed version from

    us.

    Why use the MySQL Database Server?

    The MySQL Database Server is very fast, reliable, and easy to use. If that is

    what you are looking for, you should give it a try. MySQL Server also has a

    practical set of features developed in close cooperation with our users.

    You can find a performance comparison of MySQL Server with other

    database managers on our benchmark page. MySQL Server was originallydeveloped to handle large databases much faster than existing solutions

    and has been successfully used in highly demanding production

    environments for several years. Though under constant development,

    MySQL Server today offers a rich and useful set of functions. Its

    connectivity, speed, and security make MySQL Server highly suited for

    accessing databases on the Internet.

    The technical features of MySQL Server:

    The MySQL Database Software is a client/server system that consists of a

    multi-threaded SQL server that supports different backends, several

    different client programs and libraries, administrative tools, and a wide

    range of programming interfaces (APIs). We also provide MySQL Server as

    http://www.gnu.org/licenses/http://www.gnu.org/licenses/
  • 8/14/2019 The System Aims at the Maintenance And

    60/116

    a multi-threaded library which you can link into your application to get a

    smaller, faster, easier-to-manage product.

    There is a large amount of contributed MySQL software available.

    It is very likely that you will find that your favorite application or language

    already supports the MySQL Database Server.

    The official way to pronounce MySQL is ``My Ess Que Ell'' (not ``my

    sequel''),

    History of MySQL:

    We started out with the intention of using mSQL to connect to our tables

    using our own fast low-level (ISAM) routines. However, after some testingwe came to the conclusion that mSQL was not fast enough nor flexible

    enough for our needs. This resulted in a new SQL interface to our

    database but with almost the same API interface as mySQL. This API was

    chosen to ease porting of third-party code.

    The derivation of the name MySQL is not clear. Our base directory and a

    large number of our libraries and tools have had the prefix ``my'' for well

    over 10 years. However, co-founder Monty Wideness daughter (someyears younger) is also named My. Which of the two gave its name to

    MySQL is still a mystery, even for us.

    The name of the MySQL Dolphin (our logo) is Sakila. Sakila was chosen by

    the founders of MySQL AB from a huge list of names suggested by users

    in our "Name the Dolphin" contest. The winning name was submitted by

    Ambrose Twebaze, an open source software developer from Swaziland,

    Africa. According to Ambrose, the name Sakila has its roots in SiSwati,the local language of Swaziland. Sakila is also the name of a town in

    Arusha, Tanzania, near Ambrose's country of origin, Uganda.

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Historyhttp://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#History
  • 8/14/2019 The System Aims at the Maintenance And

    61/116

    The Main Features of MySQL:

    The following list describes some of the important characteristics of the

    MySQL Database Software.

    Internals and Portability:

    Written in C and C++. Tested with a broad range of different

    compilers.

    Works on many different platforms. on Operating Systems

    Supported by MySQL.

    Uses GNU Automake, Autoconf, and Libtool for portability.

    APIs for C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl. Seesection 8 MySQL APIs.

    Fully multi-threaded using kernel threads. This means it can easily

    use multiple CPUs if available.

    Transactional and non-transactional storage engines.

    Very fast B-tree disk tables (MyISAM) with index compression.

    Relatively easy to add another storage engine. This is useful if you

    want to add an SQL interface to an in-house database.

    A very fast thread-based memory allocation system.

    Very fast joins using an optimised one-sweep multi-join.

    In-memory hash tables which are used as temporary tables.

    SQL functions are implemented through a highly optimised class

    library and should be as fast as possible. Usually there isn't any

    memory allocation at all after query initialisation.

    The MySQL code gets tested with Purify (a commercial memory

    leakage detector) as well as with Valgrind, a GPL tool(http://developer.kde.org/~sewardj/).

    Available as client/server or embedded (linked) version.

    Column Types:

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Featureshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Which_OShttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Which_OShttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Clientshttp://developer.kde.org/~sewardj/http://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Featureshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Which_OShttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Which_OShttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Clientshttp://developer.kde.org/~sewardj/
  • 8/14/2019 The System Aims at the Maintenance And

    62/116

    Many column types: signed/unsigned integers 1, 2, 3, 4, and

    8 bytes long, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB,

    DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET, and ENUM

    types. See section 6.2 Column Types.

    Fixed-length and variable-length records.

    Commands and Functions:

    Full operator and function support in the SELECT and

    WHERE clauses of queries. For example:

    mysql> SELECT CONCAT(first_name, " ", last_name)

    FROM tbl_name

    WHERE income/dependents > 10000 AND age > 30;

    Full support for SQL GROUP BY and ORDER BY clauses.

    Support for group functions (COUNT(),

    COUNT(DISTINCT ...), AVG(), STD(), SUM(), MAX(), MIN(),

    and GROUP_CONCAT()).

    Support for LEFT OUTER JOIN and RIGHT OUTER JOIN with

    both standard SQL and ODBC syntax.

    Support for aliases on tables and columns as required by

    SQL-92.

    DELETE, INSERT, REPLACE, and UPDATE return the number

    of rows that were changed (affected). It is possible toreturn the number of rows matched instead by setting a

    flag when connecting to the server.

    The MySQL-specific SHOW command can be used to

    retrieve information about databases, tables, and

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Column_typeshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Column_types
  • 8/14/2019 The System Aims at the Maintenance And

    63/116

    indexes. The EXPLAIN command can be used to determine

    how the optimiser resolves a query.

    Function names do not clash with table or column names.

    For example, ABS is a valid column name. The only

    restriction is that for a function call, no spaces are

    allowed between the function name and the `(' that

    follows it. See section 6.1.7 Is MySQL Picky About

    Reserved Words?.

    You can mix tables from different databases in the same

    query (as of Version 3.22).

    Security:

    A privilege and password system that is very flexible and secure, and

    allows host-based verification. Passwords are secure because all password

    traffic is encrypted when you connect to a server.

    Scalability and Limits:

    Handles large databases. We use MySQL Server with databases that

    contain 50 million records. We also know of users that use MySQL

    Server with 60,000 tables and about 5,000,000,000 rows.

    Up to 32 indexes per table are allowed. Each index may consist of 1

    to 16 columns or parts of columns. The maximum index width is

    500 bytes (this may be changed when compiling MySQL Server). An

    index may use a prefix of a CHAR or VARCHAR field.

    Connectivity:

    Clients may connect to the MySQL server using TCP/IP

    Sockets, Unix Sockets (Unix), or Named Pipes (NT).

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Reserved_wordshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Reserved_wordshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Reserved_wordshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Reserved_words
  • 8/14/2019 The System Aims at the Maintenance And

    64/116

    ODBC (Open-DataBase-Connectivity) support for Win32 (with

    source). All ODBC 2.5 functions are supported, as are many

    others. For example, you can use MS Access to connect to

    your MySQL server. See section 8.2 MySQL ODBC Support.

    Localisation:

    The server can provide error messages to clients in

    many languages. See section 4.6.2 Non-English Error

    Messages.

    Full support for several different character sets,

    including ISO-8859-1 (Latin1), german, big5, ujis, and

    more. For example, the Scandinavian characters '','' and '' are allowed in table and column names.

    All data is saved in the chosen character set. All

    comparisons for normal string columns are case-

    insensitive.

    Sorting is done according to the chosen character set

    (the Swedish way by default). It is possible to change

    this when the MySQL server is started. To see an

    example of very advanced sorting, look at the Czech

    sorting code. MySQL Server supports many different

    character sets that can be specified at compile and

    runtime.

    Clients and Tools

    Includes myisamchk, a very fast utility for table

    checking,optimisation, and repair. All of the functionality of

    myisamchk is also available through the SQL interface. See

    section 4 Database Administration.

    All MySQL programs can be invoked with the --help or -?

    options to obtain online assistance.

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#ODBChttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Languageshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Languageshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#MySQL_Database_Administrationhttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#ODBChttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Languageshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Languageshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#MySQL_Database_Administration
  • 8/14/2019 The System Aims at the Maintenance And

    65/116

    How Stable Is MySQL?

    This section addresses the questions ``How stable is MySQL Server?'' and

    ``Can I depend on MySQL Server in this project?'' We will try to clarify

    these issues and answer some important questions that concern manypotential users. The information in this section is based on data gathered

    from the mailing list, which is very active in identifying problems as well

    as reporting types of use.

    Original code stems back from the early '80s, providing a stable code

    base, and the ISAM table format remains backward-compatible. At TcX,

    the predecessor ofMySQL AB, MySQL code has worked in projects since

    mid-1996, without any problems. When the MySQL Database Softwarewas released to a wider public, our new users quickly found some pieces

    of ``untested code''. Each new release since then has had fewer

    portability problems (even though each new release has also had many

    new features).

    Each release of the MySQL Server has been usable. Problems have

    occurred only when users try code from the ``gray zones.'' Naturally,

    new users don't know what the gray zones are; this section thereforeattempts to document those areas that are currently known. The

    descriptions mostly deal with Version 3.23 and 4.0 of MySQL Server. All

    known and reported bugs are fixed in the latest version, with the

    exception of those listed in the bugs section, which are things that are

    design-related. See section 1.8.6 Known Errors and Design Deficiencies in

    MySQL.

    The MySQL Server design is multi-layered with independent modules.

    Some of the newer modules are listed here with an indication of how well-

    tested each of them is:

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Stabilityhttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Bugshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Bugshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Stabilityhttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Bugshttp://e/java%20orientd%20softwares/MySQL/DOCS/manual.html#Bugs
  • 8/14/2019 The System Aims at the Maintenance And

    66/116

    How Big Can MySQL Tables Be?

    MySQL Version 3.22 had a 4 GB (4 gigabyte) limit on table size. With the

    MyISAM table type in MySQL Version 3.23, the maximum table size was

    pushed up to 8 million terabytes (2 ^ 63 bytes).

    Note, however, that operating systems have their own file-size limits.

    Here are some examples:

    Operating System File-Size Limit

    Linux-Intel 32 bit 2 GB, 4GB or more, depends on Linux version

    Linux-Alpha 8 TB (?)

    Solaris 2.5.1 2 GB (possible 4GB with patch)

    Solaris 2.6 4 GB (can be changed with flag)

    Solaris 2.7 Intel 4 GB

    Solaris 2.7 UltraSPARC 512 GB

    SERVLETS

    Introduction

    The Java web server is JavaSoft's own web Server. The Java web server is

    just a part of a larger framework, intended to provide you not just with a

    web server, but also with tools. To build customized network servers for any

    Internet or Intranet client/server system. Servlets are to a web server, how

    applets are to the browser.

    About Servlets

    Servlets provide a Java-based solution used to address the problems

    currently associated with doing server-side programming, including

    http://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Table_sizehttp://e/java%20orientd%20softwares/MySQL/DOCS/manual_toc.html#Table_size
  • 8/14/2019 The System Aims at the Maintenance And

    67/116

    inextensible scripting solutions, platform-specific APIs, and incomplete

    interfaces.

    Servlets are objects that conform to a specific interface that can be plugged

    into a Java-based server. Servlets are to the server-side what applets are to

    the client-side - object byte codes that can be dynamically loaded off the net.

    They differ from applets in that they are faceless objects (without graphics or

    a GUI component). They serve as platform independent, dynamically

    loadable, plugable helper byte code objects on the server side that can be

    used to dynamically extend server-side functionality.

    For example, an HTTP Servlets can be used to generate dynamic HTML

    content. When you use Servlets to do dynamic content you get the following

    advantages: Theyre faster and cleaner than CGI scripts

    They use a standard API (the Servlets API)

    They provide all the advantages of Java (run on a variety of

    servers without needing to be rewritten).

    Attractiveness of Servlets

    There are many features of Servlets that make them easy and attractive to

    use. These include:

    Easily configured using the GUI-based Admin tool

    Can be loaded and invoked from a local disk or remotely across

    the network.

    Can be linked together, or chained, so that one Servlets can call

    another Servlets, or several Servlets in sequence.

    Can be called dynamically from within HTML pages, using

    server-side include tags.

    Are secure - even when downloading across the network, the

    Servlets security model and Servlets sandbox protect your

    system from unfriendly behavior.

  • 8/14/2019 The System Aims at the Maintenance And

    68/116

    Advantages of the Servlet API

    One of the great advantages of the Servlet API is protocol independence. It

    assumes nothing about:

    The protocol being used to transmit on the net

    How it is loaded

    The server environment it will be running in

    These qualities are important, because it allows the Servlet API to be

    embedded in many different kinds of servers. There are other advantages to

    the Servlet API as well. These include: Its extensible - you can inherit all your functionality from the base

    classes made available to you.

    Its simple, small, and easy to use.

    Features of Servlets

    Servlets are persistent. Servlet are loaded only by the web server

    and can maintain services between requests.

    Servlets are fast. Since Servlets only need to be loaded once, theyoffer much better performance over their CGI counterparts.

    Servlets are platform independent.

    Servlets are extensible. Java is a robust, object-oriented

    programming language, which easily can be extended to suit your

    needs

    Servlets are secure.

    Servlets can be used with a variety of clients.

  • 8/14/2019 The System Aims at the Maintenance And

    69/116

    Loading Servlets

    Servlets can be loaded from three places

    From a directory that is on the CLASSPATH. The CLASSPATH of the

    JavaWebServer includes service root/classes/ which is where the system

    classes reside.

    From the

  • 8/14/2019 The System Aims at the Maintenance And

    70/116

    A client can invoke Servlets in the following ways:

    The client can ask for a document that is served by the Servlet.

    The client (browser) can invoke the Servlet directly using a URL, once

    it has been mapped using the Servlet Aliases section of the admin GUI.

    The Servlet can be invoked through server side include tags.

    The Servlet can be invoked by placing it in the Servlets/ directory.

    The Servlet can be invoked by using it in a filter chain.

    JavaScript

    JavaScript is a script-based programming language that was developed by

    Netscape Communication Corporation. JavaScript was originally called Live

    Script and renamed as JavaScript to indicate its relationship with Java.

    JavaScript supports the development of both client and server components of

    Web-based applications. On the client side, it can be used to write programs

    that are executed by a Web browser within the context of a Web page. On

    the server side, it can be used to write Web server programs that can

    process information submitted by a Web browser and then updates the

    browsers display accordingly

    Even though JavaScript supports both client and server Web programming,

    we prefer JavaScript at Client side programming since most of the browsers

    supports it. JavaScript is almost as easy to learn as HTML, and JavaScript

    statements can be included in HTML documents by enclosing the statements

    between a pair of scripting tags

    .. .

    JavaScript statements

    Here are a few things we can do with JavaScript:

    Validate the contents of a form and make calculations.

    Add scrolling or changing messages to the Browsers status line.

    Animate images or rotate images that change when we move

    the mouse over them.

    http://opt/scribd/conversion/tmp/administration/servlet_alias.htmlhttp://opt/scribd/conversion/tmp/scratch15833/ssinclude.htmlhttp://opt/scribd/conversion/tmp/administration/servlet_alias.htmlhttp://opt/scribd/conversion/tmp/scratch15833/ssinclude.html
  • 8/14/2019 The System Aims at the Maintenance And

    71/116

    Detect the browser in use and display different content for

    different browsers.

    Detect installed plug-ins and notify the user if a plug-in is

    required.

    We can do much more with JavaScript, including creating entire application.

    JavaScript Vs Java

    JavaScript and Java are entirely different languages. A few of the most

    glaring differences are:

    Java applets are generally displayed in a box within the web

    document; JavaScript can affect any part of the Web document itself.

    While JavaScript is best suited to simple applications and adding

    interactive features to Web pages; Java can be used for incredibly

    complex applications.

    There are many other differences but the important thing to remember is

    that JavaScript and Java are separate languages. They are both useful for

    different things; in fact they can be used together to combine their

    advantages.Advantages

    JavaScript can be used for Sever-side and Client-side scripting.

    It is more flexible than VBScript.

    JavaScript is the default scripting languages at Client-side since

    all the browsers supports it.

    Hyper Text Markup Language

    Hypertext Markup Language (HTML), the languages of the World Wide Web

    (WWW), allows users to produces Web pages that include text, graphics and

    pointer to other Web pages (Hyperlinks).

  • 8/14/2019 The System Aims at the Maintenance And

    72/116

    HTML is not a programming language but it is an application of ISO Standard

    8879, SGML (Standard Generalized Markup Language), but specialized to

    hypertext and adapted to the Web. The idea behind Hypertext is that instead

    of reading text in rigid linear structure, we can easily jump from one point to

    another point. We can navigate through the information based on our

    interest and preference. A markup language is simply a series of elements,

    each delimited with special characters that define how text or other items

    enclosed within the elements should be displayed. Hyperlinks are underlined

    or emphasized works that load to other documents or some portions of the

    same document.

    HTML can be used to display any type of document on the host computer,

    which can be geographically at a different location. It is a versatile language

    and can be used on any platform or desktop.

    HTML provides tags (special codes) to make the document look attractive.

    HTML tags are not case-sensitive. Using graphics, fonts, different sizes, color,

    etc., can enhance the presentation of the document. Anything that is not a

    tag is part of the document itself.

    Basic HTML Tags :

    Specifies comments

    . Creates hypertext links

    . Formats text as bold

    . Formats text in large font.

    Contains all tags and text in the HTML

    document

    ... Creates text

  • 8/14/2019 The System Aims at the Maintenance And

    73/116

  • 8/14/2019 The System Aims at the Maintenance And

    74/116

    Using JDBC, it is easy to send SQL statements to virtually any relational

    database. One can write a single program using the JDBC API, and the

    program will be able to send SQL statements to the appropriate database.

    The combinations of Java and JDBC lets a programmer write it once and run

    it anywhere.

    What Does JDBC Do?

    Simply put, JDBC makes it possible to do three things:

    Establish a connection with a database

    Send SQL statements

    Process the results.

    JDBC versus ODBC and other APIs

    At this point, Microsoft's ODBC (Open Database Connectivity) API is that

    probably the most widely used programming interface for accessing relational

    databases. It offers the ability to connect to almost all databases on almost

    all platforms.

    So why not just use ODBC from Java? The answer is that you can use ODBC

    from Java, but this is best done with the help of JDBC in the form of the

    JDBC-ODBC Bridge, which we will cover shortly. The question now becomes

    "Why do you need JDBC?" There are several answers to this question:

    1. ODBC is not appropriate for direct use from Java because it uses a C

    interface. Calls from Java to native C code have a number of

    drawbacks in the security, implementation, robustness, and automatic

    portability of applications.

    2. A literal translation of the ODBC C API into a Java API would not be

    desirable. For example, Java has no pointers, and ODBC makes

    copious use of them, including the notoriously error-prone generic

    pointer "void *". You can think of JDBC as ODBC translated into an

    object-oriented interface that is natural for Java programmers.

    3. ODBC is hard to learn. It mixes simple and advanced features

    together, and it has complex options even for simple queries. JDBC, on

  • 8/14/2019 The System Aims at the Maintenance And

    75/116

    the other hand, was designed to keep simple things simple while

    allowing more advanced capabilities where required.

    4. A Java API like JDBC is needed in order to enable a "pure Java"

    solution. When ODBC is used, the ODBC driver manager and drivers

    must be manually installed on every client machine. When the JDBC

    driver is written completely in Java, however, JDBC code is

    automatically installable, portable, and secure on all Java platforms

    from network computers to mainframes.

    Two-tier and Three-tier Models

    The JDBC API supports both two-tier and three-tier models for database

    access.

    In the two-tier model, a Java applet or application talks directly to the

    database. This requires a JDBC driver that can communicate with the

    particular database management system being accessed. A user's SQL

    statements are delivered to the database, and the results of those

    statements are sent back to the user. The database may be located on

    another machine to which the user is connected via a network. This is

    referred to as a client/server configuration, with the user'