Mca Project Gui

download Mca Project Gui

of 73

Transcript of Mca Project Gui

  • 7/29/2019 Mca Project Gui

    1/73

    Punjab Technical University

    A GUI Oracle Interface in Java

    By

    Jyotsna Vohra

    Under the Guidance of

    Ms Shalini Saxena

    Submitted to the Softdot HI-Tech Educational & Training InstituteIn partial fulfillment of the requirements

    For the degree of

    Master of Computer Applications

    Punjab Technical UniversityJallandhar

  • 7/29/2019 Mca Project Gui

    2/73

    ACKNOWLEDGEMENT

    With utmost humility, we would like to express our gratitude towards the

    indispensable guidance of our teacher (or guide) Ms Shalini Saxena who guided our

    path through out the development of the project entitled A GUI Oracle Interface in

    Java. We express our sincere thanks to her for accomplishment of the said project.

    Project Team Member

    Jyotsna Vohra

    CERTIFICATE

    This is to certify that the project report entitled A GUI Oracle Interface in Java submitted toPunjab Technical Universit y in partial fulfillment of the requirement for the award of thedegree of MASTER OF C OMPUT ER APPL I C AT I O NS (MC A) is an original work carriedout by Ms. JYOTSNA VOHRA enrollment no 11203250078 under my guidance. The matter

    embodied in this project is authentic and is genuine work done by the student and has not beensubmitted whether to this university or to any other university/institute for the fulfillment of the

    requirement of any course of study.

  • 7/29/2019 Mca Project Gui

    3/73

    Signature of the student: Signature of the Counsellor

    'DWH'DWH

    Name and Address Name, Designation andof the student Address of the Counsellor

    (QUROOPHQW1R

  • 7/29/2019 Mca Project Gui

    4/73

    PROJECT PROPOSAL

    Punjab Technical Universit y

    Enrollment NoStudy Cent re6RIWGRW+L7HFK,QVWLWXWHE-mail [email protected] No 011 - 47002190-95

    1. 1DPHDQG$GGUHVVRIWKH6WXGHQW-

  • 7/29/2019 Mca Project Gui

    5/73

  • 7/29/2019 Mca Project Gui

    6/73

    2

    ABSTRACT

    A GUI Oracle Interface in Java is developed under the domain of JAVA.

    SQL plus is a tool provide by oracle for use specifically with its database

    installations. It provides the user with full access to the database, Provided

    that has relevant permissions and/or access rides for the task they which the

    carryout. The problem with SQL plus, however, is that it is a Command line

    interface. This is not so much a problem for the staff at the Organization, but

    for some students, especially those with title or on computing experience, but

    it is a difficult task to learn to use it.

    The main objective of this project is to develop a GUI tool for the oracleInstallation. A GUI tool would be the best thing to implement as it is more user

    can give, and most people who have used a computer have used a GUI in

    some form or other, while most will not have used a command line interface.

    Even if a Student has never used a computer before, they will be using a GUI

    when using the computers at the organization, and so will have formed some

    sort of mental model of how a GUI looks and works, and so will find it much

    easier to adapt to a command line interface.

    Currently the SQL plus tool can be accessed through one of twoMethods:

    1. A terminal window on a UNIX/LINUX machine.

    2. A telnet window on a PC within the organization.

    The method of connecting is a command typed in by the user, who is

    then prompted for a username and password. Once these are entered, the

    user is able to the tables within their database, and create, edit, or delete data

    or tables themselves, with in their home database. The permissions for the

    students do not allow them access to other database or to any of the functions

    used to administer the database it self.

  • 7/29/2019 Mca Project Gui

    7/73

    3

    Index

    Contents page no:

    Chapter 11.Introduction

    1.1 About Project 6

    Chapter 22.Project Analysis

    2.1 Project Requirements2.1.1 Functional Requirements 102.1.2 Non functional Requirements 112.1.3 Software 12

    2.2 Configuration Architecture2.2.1 Two Tier Architecture 28

    2.3 SDLC Approach 31

    Chapter 33.Project Design

    3.1 Data Flow Diagrams 343.2 Process Flow Diagrams 463.3 Data Model 47

    3.3.1 Data Dictionary 483.4 Application Design

    3.4.1 Modules 503.4.2 User Interface

    3.4.2.1 Screens 54

    Chapter 44. Testing

    4.1 Black Box Testing 76

    Chapter 5Conclusion 78

    Chapter 6Bibilography 80

  • 7/29/2019 Mca Project Gui

    8/73

    4

  • 7/29/2019 Mca Project Gui

    9/73

    5

    ABOUT PROJECT

    Introduction:

    A graphical user interface(GUI) presents a pictorial interface to aprogram. A GUI gives a program a distinctive look and feel By

    providing different applications with a consistent set of intuitive user interface

    components. GUIs allows the user to spend less time trying to remember

    which key tore sequences do what and spend more time using the program

    in a productive manner. A GUI tool that is mainly used to identify the tables

    that is the user is able to the tables within their database, and create, edit, or

    delete data or tables themselves.

    Purpose:

    The purpose of this project is essentially to develop a tool that runs

    within the domain, and can securely connect to the correct oracle database

    depending on the users login and password.

    Overview:

    A GUI tool would be the best thing to implement as it is more user can

    give, and most people who have used a computer have used a GUI in some

    form or other ,while most will not have used a command line interface. Even if

    a student has never used a computer before, they will be using a GUI when

    using the computers at the organization, and so will have formed some sort of

    mental model of how a GUI looks and works, and so will find it much easier to

    adapt to a command line interface.

    The method of connecting is a command typed in by the user, who isthen prompted for a username and password. Once these are entered, the

    user is able to the tables within their database, and create, edit, or delete data

    or tables themselves, with in their home database. The permissions for the

    students do not allow them access to other database or to any of the functions

    used to administer the database it self.

  • 7/29/2019 Mca Project Gui

    10/73

    6

    Objective:

    The main objective of this project is to develop a GUI tool for the oracle

    installation. A GUI tool would be the best thing to implement as it is more user

    can give, and most people who have used a computer have used a GUI in

    some form or other ,while most will not have used a command line interface.

    Scope:

    The scope this project is essentially to develop a tool that runs within

    the domain, and can securely connect to the correct oracle database

    depending on the users login and password.

    Firstly, what is needed is a tool that has two main elements: An area

    where the user can enter SQL code; and an area where the user can view the

    result of the query they have entered. The user will also require a means of

    connecting to the database depending on which language the GUI is

    developed in. this connection will have to be secured and reliable, to ensure

    that it does not connect to another database accidentally, and that allcommands sent via to tool are processed correctly and committed to the

    database correctly.

    The connection process will require a user name and Password form

    the user, and will not allow a connection if the user cannot provide these, or

    provides an incorrect user name and/ Password. The tool it self should be

    develop in a language, which is portable. By this, we do not intend to carry it

    with us every where we go , that it must be in a language, which can run on

    more than one platform. This allows the organization and any other users

    who implement the tool to run it without the worry of not being able to make

    use of it if the platform on which they use it becomes unavailable it future.

    Also, it means that it can be implemented on both the PCs and the UNIX/

    LINUX machines with in the organization.

  • 7/29/2019 Mca Project Gui

    11/73

    7

    The development of the tool also needs to consider the human-

    computer interaction aspects that come with the development of any GUI. Its

    primary concern, and the one of the primary concerns of the project it self is to

    make accessing the database more friendly user. This means developing a

    tool which the user is comfortable user. A tool which the user can adapt to

    with minimum training, and can learn to more quickly, using past experience

    of other GUIs or simply by trial and error.

    Existed System:

    SQL plus is a tool provide by oracle for use specifically with its

    database installations it provides the user with full access to the database,

    provided that the has the relevant permission and/or access rides for the task

    they which the carryout. The problem with SQL plus, however, is that it is a

    command line interface. This is not so much a problem for the staff at the

    organization, but for some students, especially those with little or no

    computing experience, it is a difficult task to learn to use it.

    Proposed system:The main objective of this projects is to develop GUI tool for the oracle

    installation. A GUI tool would be the best thing to implement as it is more user

    can give, and most people who have used a GUI in some form or other, while

    most will not have used a command line interface. Even if a student has never

    used a computer before , they will be using a GUI when using the computers

    at the organization, and so will have formed some sort of mental model of how

    a GUI looks and works, and so will find it much easier to adapt to command

    line interface.

    To understand the design principles of graphical user interfaces. To be

    able to builds graphical user interfaces. It can execute the SQL queries

    correctly and deliver the correct results. It is much easier to adapt to

    command line interface. Students can easily access this GUI tool without any

    computing experience.

  • 7/29/2019 Mca Project Gui

    12/73

    8

  • 7/29/2019 Mca Project Gui

    13/73

    9

    PROJECT REQUIREMENTS

    Functional requirements:

    First user create the database using login and password

    by the system and manager.

    In this database the user contain number of

    Tables.

    These tables contain the number of records.

    These records contain number of fields.

    In which the user can easily create tables and modify or

    add the fields.

    User can easily delete the tables using the

    delete command

    User insert values or select the values using the insert or

    select command.

    The user can modify the fields in the table like insert

    values or delete the values or changes the values ,these

    changes can be done by using the rollback, commit and

    save point.

  • 7/29/2019 Mca Project Gui

    14/73

    10

    Non Functional Requirements:

    Software Specification

    Language : JDK 1.4

    Database : ORACLE 9i

    Operating System : Windows2000

    Programming Languages : Java, Swings

    Hardware Specification:

    Processor : Intel P-III based system

    Processor Speed : 250 MHz

    RAM : 256MB

    Hard Disk : 30GB

  • 7/29/2019 Mca Project Gui

    15/73

    11

    SOFTWARE:

    JAVA

    HISTORY OF JAVA:

    Java language was developed by James Gosling and his team at sun

    micro systems and released formally in 1995. Its former name is oak. Java

    Development Kit 1.0 was released in 1996. To popularize java and is freely

    available on Internet.

    OVERVIEW OF JAVA:

    Java is loosely based on C++ syntax, and is meant to be Object-

    Oriented Structure of java is midway between an interpreted and a compiled

    language. The Java compiler compiles Java programs into Byte Codes that

    are secure and portable across different platforms. These byte codes are

    essentially instructions encapsulated in single type, to what is known as a java

    virtual machine (JVM), which resides in standard browser.

    JVM verifies these byte codes when downloaded by the browser

    for integrity. JVMs available for almost all OS. JVM converts these byte codesinto machine specific instructions at runtime.

    Javas Magic: The Byte Code

    The key that allows Java to solve both the security and the portability

    problems just described is that the output of a Java compiler is not executable

    code. Rather, it 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. This may come as a bit of a surprise.

    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

    straightforward: only the JVM needs to be implemented for each platform.

  • 7/29/2019 Mca Project Gui

    16/73

    12

    Once the run-time package exists for a givensystem, any Java Program can

    run on it. Remember, although the details of the JVM will differ from platform

    to platform, all interpret the same Java Byte code

    FEATURES OF JAVA:

    Java is object-oriented language and supports encapsulation,

    inheritance, polymorphism and dynamic binding, but does not

    support multiple inheritances. Every thing in java is an object

    except some primitive data types.

    Java is portable architecture neutral that is java programs once

    compiled can be executed on any machine that is enabled.

    JAVA is distributed in its approach and used for Internet

    programming.

    Java is robust, secured, high performing and dynamic in nature.

    Java supports multithreading. There for different parts of the

    program can be executed at the same time

    JAVA AND INTERNET:

    Java is strongly associated with Internet and known as Internetprogramming language. Internet users can use java to create applet programsand run them locally using java enabled browser search as hot java. Applets

    can be downloaded from remote machine via Internet and run it on local

    machine.

    JAVA AND WORLD WIDE WEB:

    World Wide Web is an open-ended information retrieval system

    designed to be used in the distributed environment. This system contains web

    pages that provide both information and controls. We can navigate to a new

    web page in any direction. This is made possible worth HTML java was meant

    to be used in distributed environment such as Internet. So java could be easily

    incorporated into the web system and is capable of supporting animation

    graphics, games and other special effect. The web has become more

    dynamic and interactive with support of java. We can run a java program on

    remote machine over Internet with the support of web.

  • 7/29/2019 Mca Project Gui

    17/73

    13

    JAVA ENVIRONMENT:

    Java environment includes a large no. Of tools, which are part of the

    system known as java development kit (JDK) and hundreds of classes,

    methods, and interfaces grouped into packages forms part of java standard

    library (JSL).

    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 are then interpreted on each

    platform by the runtime environment. Java also provides stringent compile

    and runtime checking and automatic memory management in order to ensure

    solid code.

    JAVA VIRTUAL MACHINE:

    Then we compile the code, java compiler creates machine code (byte

    code) for a hypothetical machine called java virtual machine (JVM). The JVM

    will execute the byte code and overcomes the issue of portability. The code iswritten and compile for one machine and interpreted all other machines. This

    machine is called java virtual machine.

  • 7/29/2019 Mca Project Gui

    18/73

    14

    SWINGS

    Describe Swing classessuch as

    1. JComponent

    2. JFrame3. JPanel

    4. JApplet

    5. JRootPane.JScrollPane.JViewPort

    Describe Buttons, CheckBoxes and RadioButtons

    Describe Lists and ComboBoxes

    Swing components:

    Provides lightweight visual components

    Contains replacement components for AWT visual components and

    also complex components - trees and tables

    While designing a GUI, there is a main window on which visual

    components are placed

    Swing components are in the javax.swing package

    All Swing components start with J.

    Frames

    Frame is a top level container.

    Provides place for other Swing components

    JFrame components is used to create windows in Swing program

    Its constructors are:

    JFrame()

    JFrame(String Title)

    Components have to be added to the content pane and not directly

    to the JFrame object

    Example: frame.getContentPane().add(b);

  • 7/29/2019 Mca Project Gui

    19/73

    15

    Panel

    JPanel component is an intermeadiate container.

    Used to group small lightwieght components together

    JPanel objects have FlowLayout as their default layout

    JPanel has the following constructors:

    JPanel()

    JPanel(LayoutManager lm).

    Content pane and Applets

    content pane makes the swing applets different from regular applets in

    the following ways.

    Components are added to the content pane of Swing applets, not

    directly to the applet

    The layout manager is set on a Swing applets content pane, not

    directly on the applet

    Default layout manager for Swing applets content pane is

    BorderLayout whereas for regular applets, it is FlowLayout

    Painting code is not directly put in a JApplet object.

    Basic GUI Components

    A form can be used for collecting information.

    While creating GUIs, the text can be placed on the content pane

    using labels.

    To create elements on a GUI:

    Create the element.

    Set its attributes (size, color, font)

    Position it.

    Add it to the screen.

  • 7/29/2019 Mca Project Gui

    20/73

    16

    Text Components

    JText Component is the root class of all swing text components.

    JTextField:

    JTextField component allows us to enter/edit a single line of text.

    The constructors of this class are: JTextField()

    JTextField(Document doc, String text, int columns)

    JTextField(int columns)

    JTextField(String text)

    JTextField(String text, int columns).

    Text Area :

    JTextArea components is used to accept several lines of text from the

    user.

    Implements the scrollable interface to activate scrollbars

    JTextArea component can be created using:

    JTextArea()

  • 7/29/2019 Mca Project Gui

    21/73

    17

    JTextArea(Document doc)

    JTextArea(Document doc, String text, int rows, int cols)

    JTextArea(int rows, cols)

    JTextArea(String text)

    JTextArea(String text, int rows, int cols)

    Buttons

    Buttons trap user action.

    JButton class descends from javax.swing.AbstractButton class

    JButton object consists of a text label and/or image icon, empty area

    around the text/icon and border

    A JButton can be created using:

    JButton()

    JButton(Icon icon)

    JButton(String text)

    JButton(String text, Icon icon)

    CheckBox:

    CheckBox provides user with a set of options.

    JCheckBox class has the following constructors:

    JCheckBox()

    JCheckBox(Icon icon)

    JCheckBox(Icon icon, boolean selected)

    JCheckBox(String text)

    JCheckBox(String text, boolean selected)

    JCheckBox(String text, Icon icon)

    JCheckBox(String text, Icon, boolean selected)

    Radio button:

    By using the radiobutton any one option may be selected by the user .

    By using the button group to create a group.

  • 7/29/2019 Mca Project Gui

    22/73

    18

    JRadioButton object can be created by using:

    JRadioButton()

    JRadioButton(Icon icon)

    JRadioButton(Icon, boolean selected)

    JRadioButton(String text)

    JRadioButton(String text, boolean selected)

    JRadioButton(String text, Icon icon)

    JRadioButton(String text, Icon icon, boolean selected).

    Combo Box:

    ComboBox is a combination of texfield and drop down list.

    In Swing, combo box is represented by JComboBox class.

    public JComboBox() this constructor creates a JComboBox with a

    default data model.

    public JComboBox(ComboBoxModel asModel) a combo box that

    takes its items from an existing ComboBoxModel.

    public JComboBox(Object [] items) a combo box that contains the

    elements of the specified array.

    Menus:

    Menus show a list of items that indicate various tasks.

    Select or click an option and another list or sub-menu opens up.

    A Swing menu consists of a menubar, menuitems and menus.

    Menubar is the root of all menus and menuitems.

  • 7/29/2019 Mca Project Gui

    23/73

    19

    JMenuBar:

    JMenuBar is a component that can be added to a container through a

    JFrame.

    Consists of a number of JMenus with each JMenu represented as a

    string within the JMenuBar

    JMenuBar requires:

    SingleSelectionModel

    keeps track of the menu currently selected

    Look and feel class

    Responsible for drawing the menu bar and responding to

    events that occur in it.

    JMenu:

    JMenu is seen as a text string under JMenuBar while

    it acts as a popup menu when the user clicks on it

    JMenu has two additional classes:

  • 7/29/2019 Mca Project Gui

    24/73

    20

    JPopupMenu

    Used to display the JMenus menu items

    Look and feel.

    Responsible for drawing the menu in the menubar and

    for responding to all events that occur in it.

    JCheckBoxMenuItem:

    Contains the checkboxes as it items.

    Checkboxes are created using JCheckBox class

    May have a text string and/or an icon

    When a JCheckBoxMenuItem is clicked and released, the state of a

    menu item changes to selected or deselected.

    JRadioButtonMenuItem:

    Select to checkboxes except that only one radiobutton can be

    selected at any point of time.

    May have a text string and/or an icon

    Clicking a selected radio button does not change its state

    Clicking an unselected radio button deselects the earlier selected

    one.

    Characteristics common to Swing Components:

    Content - decides on the state of the component

    Visual appearance - determines what the component should look like

    Behavior - decides how the component should respond to events.

    OVERVIEW OF JDBC:

    JDBC stands for "Java DataBase Connectivity".

  • 7/29/2019 Mca Project Gui

    25/73

    21

    It is an API (Application Programming Interface) which consists of a set

    of Java classes, interfaces and exceptions

    JDBC is a very popular data access standard.

    consists of a set of classes and interfaces written in the Java

    programming language.

    provides a standard API for tool/database developers and makes it

    possible to write database applications using a pure Java API.

    The standard defined by Sun Microsystems, allowing individual

    providers to implement and extend the standard with their own JDBC

    drivers.

    JDBC:

    establishes a connection with a database

    sends SQL statements

    processes the results.

    RDBMS (Relational Database Management Systems) or third-party

    vendors develop drivers which adhere to the JDBC specification. Other

    developers use these drivers to develop applications which access

    those databases

    SUN prepares and maintains the JDBC specification. Since JDBC is

    just a specification (suggestions for writing and using JDBC drivers),third-party vendors develop JDBC drivers to this specification. JDBC

    developers then use these drivers to access data sources.

    The use of JDBC is there only to help you (a Java

    developer) develop data access applications without having to learn

    and use proprietary APIs provided by different RDBMS vendors. You

    just have to learn JDBC and then you can be sure that you'll be able to

    develop data access applications which can access different RDBMSusing different JDBC drivers.Perhaps the most common use of theseJava applications will be within a company or on an "Intranet," so this

    might be called the Intranet scenario. For example, a company might

    implement all of its corporate applications in Java using GUI building

    tools that generate Java code for forms based on corporate data

  • 7/29/2019 Mca Project Gui

    26/73

    22

    schemas. These applications would access corporate database

    servers on a local or wide area network. However, Java applications

    could also access databases through the Internet. The JDBC Guide

    JDBC API:

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

    database access.

    Two-tier model -- a Java applet or application interacts directly with

    the database.

    Three-tier model -- introduces a middle-level server for execution of

    business logic:

    the middle tier to maintain control over data access.

    the user can employ an easy-to-use higher-level API which is

    translatedby the middle tier into the appropriate low-level calls.

    The basic classes of jdbc API:

    The JDBC API is expressed as a series of abstract Java interfaces that

    allow an application programmer to open connections to particular

    databases, execute SQL statements, and process the results. The

    most important interfaces are:

    StatementCreates

    Driver Manager

    Driver

    Connection

    registers

    Provides

    Resultset

    Resultset metadata

    Provides

  • 7/29/2019 Mca Project Gui

    27/73

    23

    java.sql.DriverManager which handles loading of drivers and provides

    support for creating new database connections

    java.sql.Connection which represents a connection to a particular

    database

    java.sql.Statement which acts as a container for executing a SQL

    statement on a given connection .

    java.sql.ResultSet which controls access to the row results of a given

    Statement

    JDBC API interfaces:

    Callable statement.

    Connection

    DatabaseMetaData

    Driver

    PreparedStatement

    ResultSet

    ResultSetMetaData

    Statement

    StatementcreateStatement()

    returns a new Statement object

    PreparedStatement

    prepareStatement(String)

    returns a new PreparedStatement object

    It is the subclass of the statement class

    It compiles the SQL statement before execution and can also take

    parameters.

    Callable Statement

    This class extends the prepare statement class and is used for

    executing database stored procedures from a java Program.

    These Statements are used to send SQL commands to the database

    These are created via the connection object.

  • 7/29/2019 Mca Project Gui

    28/73

    24

    JDBC Architecture:

    The JDBC architecture is Divided in to 2 Parts

    JDBC API (java.sql).

    JDBC Driver Types .

    The JDBC Steps

    1. Importing Packages

    2. Registering the JDBC Drivers

    3. Opening a Connection to a Database

    4. Creating a Statement Object

    5. Executing a Query and Returning a Result Set Object

    6. Processing the Result Set

    7. Closing the Result Set and Statement Objects

    8. Closing the Connection.

    Things to Do in your Java Program:

    Load the Drivers Establish the Connection

    Create JDBC Statement

    Execute the SQL Statement

    Retrieve Values from the Result Set

    Java Application

    JDBC driver

  • 7/29/2019 Mca Project Gui

    29/73

    25

    Three types of drivers:

    JDBC Type 1 Driver (JDBC-ODBC Bridge plus ODBC Driver)

    JDBC Type 2 Driver (OCI Driver)

    JDBC Type 3 Driver (THIN driver)

    Making a connection:

    The second step in establishing a connection is to have the appropriate

    driver connect to the DBMS.

    The following line of code illustrates the general idea:

    String url = "jdbc:odbc:Fred";

    Connection con = DriverManager.getConnection(url, "myLogin",

    "myPassword");

    Create a JDBC statements:

    A Statement object is what sends your SQL statement to the DBMS.

    You simply create a Statement object and then execute it, supplying

    the appropriate execute method with the SQL statement you want to

    send. For a SELECT statement, the method to use is executeQuery .

    For statements that create or modify tables, the method to use is

    executeUpdate .

    It takes an instance of an active connection to create a Statement

    object. In the following example, we use our Connection object con to

    create the Statement object stmt :

    Statement stmt = con.createStatement();

    Execute the SQL statements:

    At this point stmt exists, but it does not have an SQL statement to pass

    on to the DBMS. We need to supply that to the method we use to

    execute stmt . For example, in the following code fragment, we supply

    executeUpdate with the SQL statement from the example above:

  • 7/29/2019 Mca Project Gui

    30/73

    26

    stmt.executeUpdate("CREATE TABLE COFFEES " + "(COF_NAME

    VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " + "SALES

    INTEGER, TOTAL INTEGER)");

    SQL (structured query language)

    Oracle's SQL:

    An Overview Structured Query Language (SQL) was introduced by

    IBM as the language to interface with its prototype relational database. The

    first commercially available SQL relational database management system was

    management system, System R introducedin1979byOracle Corporation.

    Today, SQL has become an industry standard , and Oracle Corporation

    clearly leads the world in relational database Management system technology

    Because SQL is a non-procedural language, sets of records can be

    manipulated instead of one record at a time. The syntax is free-flowing,

    enabling you to concentrate on the data presentation. Oracle has two

    optimizers (cost- and rule-based) that will parse the syntax and format it into

    an efficient statement before the database engine receives it for processing.

    The database administrator (DBA) determines which optimizer is in effect for

    each database instance.

    SQL is an industry standard language for updating, and

    getting information from, a database

    The basic and most common SQL statements are: SELECT,

    INSERT, UPDATE, DELETE

    Transaction management is implemented in SQL using

    COMMIT and ROLLBACK

    Configuration Architecture

    In regarding with our project we are using the two-tier architecture

    Two-tier Architecture:-

  • 7/29/2019 Mca Project Gui

    31/73

    27

    It also referred to as client-server architecture consists of a client

    computer and a server computer, which interact through a well-defined

    protocol. What part of the functionality the client implements, and what part is

    left to the server, can vary. In the traditional client-server architecture, the

    client implements just the graphical user interface, and the server implements

    both the business logic and the data management; such clients are often

    called thin clientsand this architecture is illustrated in the figure.

    TWO-TIER ARCHITECTURE: THIN CLIENTS

    Other divisions are possible, such as more powerful clients that

    implement both user interface and business logic, or clients that implement

    user interface and part of business logic. With the remaining part being

    implemented at the server level: such clients are often called thick clients, and

    the architecture is illustrated in figure.

    APPLICATION

    LOGIC

    DBMS

    N

    E

    T

    W

    O

    R

    K

    CLIENT

    CLIENT

    . . . .

  • 7/29/2019 Mca Project Gui

    32/73

    28

    TWO-TIER ARCHITECTURE: THICK CLIENTS

    Compared to the single-tier architectures physically separate the

    user interface from the data management layer. To implement two-tier

    architectures, we can no longer have dumb terminals on the client side: we

    require computers that run sophisticated presentation code.

    Over the last ten years, the large number of client server development

    tools such Microsoft visual basic and Sybase power builder have beendeveloped. These tools permit rapid development of client-server software,

    contributing to the success of the client-server model, especially the thin-client

    version.

    The thick-client model has several disadvantages when

    compared to the thin-client model. First, there is no central place to update

    maintain the business logic, since the application code runs at many client

    sites. Second, a large amount of trust is required between the server and the

    clients. Third, it does not scale with the number of clients; it typically cannot

    handle more than a few hundred clients. The application logic at the client

    issues SQL queries to the server and the server returns the query result to the

    client, where further processing takes place. Large query result might be

    DBMS

    N

    E

    T

    W

    O

    R

    K

    CLIENT

    APPLICA

    TION

    LOGIC

    .

    CLIENT

    APLLICA

    TION

    LOGIC

  • 7/29/2019 Mca Project Gui

    33/73

    29

    transferred between client and server. Fourth, thick-client systems do not

    scale as the application accesses more and more database systems.

    SDLC Approach

    SDLC Approach (Waterfall Model):-

    Structured analysis uses a technique called the system development

    life cycle (SDLC) to plan and manage the systems development process

    Although it is primary identified with structured analysis, sdlc describes

    activities and functions that system developers typically perform, regardless of

    how those activities and functions fit into particular methodology.

    The SDLC includes following steps:

    Systems planning

    Systems analysis

    Systems design

    Systems implementation

    Systems operation and support

    Systems Planning

    System planning usually begins with a formal request to the IT

    department, called system Request that describes problems or desired

    changes in an information system or a business process.

    Systems Analysis

    The first step is requirements modeling where you define and describe

    business process .During the next tasks, data modeling, process modeling

    and object modeling to develop a logical model of business process the

    system must support.

  • 7/29/2019 Mca Project Gui

    34/73

    30

    Systems Design

    The purpose of system design is to create a blue print for the new

    system that will satisfy all documented requirements .Whether a system is

    being developed in house or purchased as a package.

    During systems implementation, the new system is constructed.

    Whether the developers used structured analysis or O-O methods, the

    procedure is same programs are written, tested and documented and the

    system is installed.

    During systems operation and support, the IT staff maintains and

    enhances the system. Maintenance changes correct errors and adapt to

    changes in the environment, such as new tax rates.

  • 7/29/2019 Mca Project Gui

    35/73

    31

    PROJECT DESIGN

  • 7/29/2019 Mca Project Gui

    36/73

    32

    DATA FLOW DIAGRAMS

    CONTEXT LEVEL:

    LEVEL 1:

    LEVEL 2:

    Registration

    SQLExecutio

    Newuser

    Validuser

    Login

    rocess

    Database

    Login

    userA GUIOracle

    tool

    database

    2.DDL

    3.DML

    4.TCL

    LoginDatabase

    1.Createdatabas

    SQL

    Execution

  • 7/29/2019 Mca Project Gui

    37/73

    33

    2.1.1.2.Execute thecommand

    2.1.1.1.Get theUsername andpassword

    loginDataBase

    Result

    UserDetails

    LEVEL 2.1.1:

    2.1.2.1Get user

    name

    2.1.2.3Get the

    Privilege

    2.1.2.2Register the

    user

    New user

    Sql grantstatements

    2.1.2.4Execute thelogin

    Data Base

    privilege

    LEVEL 2.1.2:

  • 7/29/2019 Mca Project Gui

    38/73

    34

    LEVEL 2.2:

    2.2.1.1.Getthe

    Scheme name

    LEVEL 2.2.1:

    2.2.1.3.Getthe

    Column

    2.2.1.4.Execute thecreate command

    2.2.1.2.Getthe

    Ob ect name

    Schemename

    Objectname

    Columndetails

    result

    Sql createstatements

    Database

    Create table:

    2.DDL 2.2.2.Altertable

    2.2.1.Createtable

    2.2.4.Droptable

    2.2.3.Truncatetable

    Database

  • 7/29/2019 Mca Project Gui

    39/73

    35

    LEVEL2.2.3:Truncate table

    2.2.3.1.Get theScheme name

    2.2.3.4.Execute thetruncate command

    2.2.3.2.Get theObject name

    2.2.3.3.Get theColumn details

    Schemename

    Objectname

    Columndetails

    result

    Sql truncatestatements

    LoginData base

    LEVEL 2.2.2:Alter Table

    2.2.2.4.Executethe alter command

    2.2.2.3.Getthe

    Column

    2.2.2.2.Get the

    Object name

    2.2.2.1.Get the

    Scheme name

    LoginData base

    Schemename

    ColumndetailsSql alter

    statements

  • 7/29/2019 Mca Project Gui

    40/73

    36

    LEVEL 2.2.4:

    DropTable

    2.2.4.1.Getthe

    Scheme name

    2.2.4.3.Executethe

    dro command

    2.2.4.2.Getthe

    Ob ect name

    Schemename

    Objectname

    result

    Sql dropstatements

    logindatabase

    LEVEL 2.3

    DML STMTS

    2.3.2.Insert

    2.3.4.Delete

    2.3.3.Update

    2.3.1.Select

    logindatabas

    e

    3.DML

  • 7/29/2019 Mca Project Gui

    41/73

  • 7/29/2019 Mca Project Gui

    42/73

    38

    PROCESS FLOW DIAGRAMS

  • 7/29/2019 Mca Project Gui

    43/73

    39

    DATA MODEL

    Introduction

    A data model is an abstract model that describes how data is

    represented and used.

    The term data model has two generally accepted meanings:

    1. A data model theory i.e., a formal description of how data may be

    structured and used.

    2. A data model instance i.e., applying a data model theory to create a

    practical data model instancefor some particular applications.

    A data model theoryhas three main components:

    The structural part: a collection of data structures which are

    used to create databases representing the entities or objects

    modeled by the database.

    The integritypart: a collection ofrules governing the constraints

    placed on these data structures to ensure structural integrity.

    The manipulation part: a collection of operators which can beapplied to the data structures to update and query the data

    contained in the database.

    For example, in the relation model, the structural part is based

    on a modified concept of the mathematical relation; the integrity part is

    expressed in first order logic and the manipulation part is expressed using the

    relation algebra, tuple calculus and domain calculus.

    Data modeling is the process of creating a data model instance

    by applying a data model theory. This is typically done to solve some

    business enterprise requirement.

  • 7/29/2019 Mca Project Gui

    44/73

    40

    Business requirements are normally captured by a semantic

    logical data model. This is transformed into a physical data model instance

    from which is generated a physical database.

    Data Dictionary:-

    A data dictionary is a set of metadata that contains definitions

    and representations of data elements. Within the context of a DBMS, a data

    dictionary is a read-only set of tables and views. Amongst other things, a data

    dictionary holds the following information:

    Precise definition of data elements

    Usernames, roles and privileges

    Schema objects

    Integrity constraints

    Stored procedures and triggers

    General database structure

    Space allocations

    One benefit of a well-prepared data dictionary is a consistency

    between data items across different tables. For example, several tables may

    hold telephone numbers; using a data dictionary the format of this telephone

    number field will be consistent.

    When an organization builds an enterprise-wide data dictionary,

    it may include both semantics and representational definitions for data

    elements. The semantic components focus on creating precise meaning of

    data elements. Representation definitions include how data elements are

    stored in a computer structure such as an integer, string or date format. Data

    dictionaries are one step along a path way of creating precise semantic

    definitions for an organization.

  • 7/29/2019 Mca Project Gui

    45/73

    41

    Initially, data dictionaries are some times simply a collection of

    data base columns and the definitions of what is the meaning and type of the

    columns contain. Data dictionaries are more precise than glossaries (terms

    and definitions) because they frequently have one or more representations of

    how data is structured. Data dictionaries are usually separate from data

    models since data models usually include complex relationships between data

    elements.

    Data dictionaries can evolve into full ontology (computer

    science) when discrete logic has been added to data element definitions.

    LOGIN:-

    COLUMN NAME DATA TYPE CONSTRAINTS

    username Varchar2 Primary key

    Password Varchar2

  • 7/29/2019 Mca Project Gui

    46/73

  • 7/29/2019 Mca Project Gui

    47/73

  • 7/29/2019 Mca Project Gui

    48/73

  • 7/29/2019 Mca Project Gui

    49/73

    45

    Transaction Control Language:

    TCL commands are used to control the (transactions) changes made

    by data Manipulation Language commands. These statements include :

    COMMIT :

    It is used to end current transaction and make permanent all

    changes performed in the transaction. i.e., it is used to store the data

    permanently.

    ROLLBACK :

    Discards all changes made by the current transaction in the

    database. An abnormal termination also causes the transaction to

    ROLLBACK

    SAVE POINT :

    To get back the data up to certain point.

  • 7/29/2019 Mca Project Gui

    50/73

    46

    USER INTERFACES

    Screens:

    If the user enters username and password then the user must click the submit

    button and enters the home page but if a new user must click the registration

    button and user goes to the create database page.In which user can create its

    own database.

    Welcome to home page

    If the user enter correct username and password it enter into home page in

    this he can click any one of the module .

  • 7/29/2019 Mca Project Gui

    51/73

    47

    Creation of a Database:

    If a new user clicks registration button in the loginpage it enter into this page

    in which user can create its own database, in which user gives username andpassword to create new database.

  • 7/29/2019 Mca Project Gui

    52/73

  • 7/29/2019 Mca Project Gui

    53/73

    49

    If new user get grant permissions it again enter login page to test whether

    database created or not, if created it enter into home page,if not user must

    again click registration button and goes to the create database page.

    Welcome to Home page:

    If the user is valid it enter into the home page and here user can click any of

    the modules, firstly the user clicks the DDLStatements to create, alter,truncate

    and to drop the table.

  • 7/29/2019 Mca Project Gui

    54/73

    50

    Welcome to DDLStatements:

    when the user clicks the DDLStatement button in home page it enter into this

    page in which user can choose any of the sub modules like create , alter ,

    truncate and drop.

  • 7/29/2019 Mca Project Gui

    55/73

    51

    Welcome to Create table page:

    In which user create the table by giving the table name , database name and

    fields name, if user click the save button the table is saved in database

  • 7/29/2019 Mca Project Gui

    56/73

  • 7/29/2019 Mca Project Gui

    57/73

    53

    Truncate table page:

    In this user truncate the table ,if any fields to be removed this

    command is used by giving the table name, database name and

    fieldname.

  • 7/29/2019 Mca Project Gui

    58/73

  • 7/29/2019 Mca Project Gui

    59/73

    55

    Welcome to DMLStatements:

    If the user clicks the DMLStatements in home page the user enter

    into this page in which can insert delete select and update the

    values of the fields in the table

  • 7/29/2019 Mca Project Gui

    60/73

    56

    Insert table:

    In this user insert the values to the table which is created by user in

    DDL page

  • 7/29/2019 Mca Project Gui

    61/73

    57

    Delete Table:

    In which user delete the fields in the table

  • 7/29/2019 Mca Project Gui

    62/73

    58

    Update Table:

    In this page if user want to change any values in the table it can be

    used.

  • 7/29/2019 Mca Project Gui

    63/73

    59

    Select Table:

    In this user can select the values in the table by using this

    command

  • 7/29/2019 Mca Project Gui

    64/73

    60

    Welcome to TCL Statements:

    If the user wants to control the transactions in the table by using

    commit, rollback and savepoint.

  • 7/29/2019 Mca Project Gui

    65/73

    61

    Commit :

    If user wants to commit any commands in DML it can be used

  • 7/29/2019 Mca Project Gui

    66/73

    62

    Rollback:

    If the user does not want to change any saved points then the usercan use this command

  • 7/29/2019 Mca Project Gui

    67/73

    63

    Save point:

    If user wants to change some saved and unsaved points savepoint

    can be used.

  • 7/29/2019 Mca Project Gui

    68/73

    64

    TESTING

  • 7/29/2019 Mca Project Gui

    69/73

  • 7/29/2019 Mca Project Gui

    70/73

    66

    CONCLUSION

  • 7/29/2019 Mca Project Gui

    71/73

    67

    CONCLUSION

    The main objective of this projects is to develop GUI tool for the oracle

    installation. A GUI tool would be the best thing to implement as it is more user

    can give, and most people who have used a GUI in some form or other, while

    most will not have used a command line interface. Even if a student has never

    used a computer before , they will be using a GUI when using the computers

    at the organization, and so will have formed some sort of mental model of how

    a GUI looks and works, and so will find it much easier to adapt to commandline interface.

    Once developed the tool will have to be tested thoroughly for any bugs.

    A through test of the tool should cover aspects as whether or not it connects

    to the correct oracle database , whether or not it can execute SQL queries

    correctly and deliver the correct results, and whether or not it can execute

    database updates and connect them. It reduces the time complexity.

    It easily for every user.

    To understand the design principles of graphical user interfaces. To be

    able to builds graphical user interfaces. It can execute the SQL queries

    correctly and deliver the correct results. It is much easier to adapt to

    command line interface. Students can easily access this GUI tool without any

    computing experience.

  • 7/29/2019 Mca Project Gui

    72/73

    68

    BIBILOGRAPHY

  • 7/29/2019 Mca Project Gui

    73/73

    BIBILOGRAPHY

    WEB SITES:

    www.java2s.com

    www.sun.java.com

    www.java.sun.com/doc/languageenvironment

    www.bpbpub.com

    Text books referred:

    The Complete Reference by Herbert Schildt.

    Systems Analysis and Design by Shelly/Cashman/Rosenbaltt.

    Software Engineering by S.Rogers Pressman.

    The programming language of oracle by Ivan Bayross.