Upload
himanshu-vohra
View
228
Download
0
Embed Size (px)
Citation preview
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.