Dbms Report
Dbms Report
2023- 2024
Submitted in partial fulfillment of the requirements for the award of the degree of
BACHELOR OF ENGINEERING
in
COMPUTER SCIENCE & DESIGN
Submitted by
Prof. LAVANYA S G
Assistant Professor
Dept. of CSE, AIT
CERTIFICATE
Certified that the project work entitled “Online Blogging Application”, carried out by Shreehari
Menon [ 1AT22CG090 ], Y Surya Prakash Reddy [ 1AT22CG126 ] are bonafide students of
Atria Institute of Technology, in partial fulfilment for the award of Bachelor of Engineering in
Computer Science & Design of Visvesvaraya Technological University, Belagavi during the
academic year 2023-2024. It is certified that all corrections/suggestions indicated for Internal
Assessment have been incorporated in the Report deposited in the departmental library. The mini
project report has been approved as it satisfies requirement in respect of project work prescribed for
the said degree.
Place: Bangalore
Date:
The purpose of Online Blogging System is to automate the existing manual system by the help
of computerized and full-fledged computer software, fulfilling their requirements, so that
their valuable data/information can be stored for a longer period with easy accessing and
manipulation of the same.
The required software and hardware are easily available and easy to work with. Online
Blogging System, as described above, can lead to error free, secure, reliable and fast
management system. It can assist the user to concentrate on their other activities rather
to concentrate on the record keeping.
Thus, it will help organization in better utilization of resources. The organization can maintain
computerized records without redundant entries. That means that one need not be distracted
by information that is not relevant, while being able to reach the information.
The aim is to automate its existing manual system by the help of computerized equipment and
full-fledged computer software, fulfilling their requirements, so that their valuable
data/information can be stored for a longer period with easy accessing and manipulation of the
same.
Basically, the project describes how to manage for good performance and better services for
the clients. It is also use for creating posting and viewing the others post, ideals, entries and
blogs
ACKNOWLEDGEMENT
We express gratitude to our institution and management for providing us with good infrastructure,
laboratory, facilities and inspiring staff, and whose gratitude was of immense help in completion
of this project successfully.
We express our sincere gratitude to Dr. Rajesha S, Principal, Atria Institute of Technology, for
providing us the required environment and for his valuable suggestion.
Our sincere thanks to Dr. Devi Kannan, Head of the Department of Computer Science and
Engineering, Atria Institute of Technology, for her valuable support and for rendering us
resources for this project work.
We express our gratitude to Prof. Lavanya S G, Assistant Professor, Dept. of Computer Science
and Engineering, Atria Institute of Technology, who guided us with valuable suggestions in
completing this project at every stage.
Last but not the least, the project would not have been a success without the support of our
parents and friends. Our sincere thanks should be rendered to everyone who helped us in all
possible ways.
TABLE OF CONTENTS
No.
Declaration
Abstract
Acknowledgemen
t
1 Introduction to database 1
1.1 Database environment system 3
1.2 Advantages of using DBMS approach 4
1.3 Architecture of Database 5
2 Introduction to project 7
2.1 Overview of project 7
2.1.1 Introduction 7
2.1.2 Problem statement 7
2.1.3 Reasons for project 7
2.1.4 Scope 7
3 Design 8
3.1 System architecture
8
3.2 Entity relationship diagram
9
Requirements 1
4 0
4.1 Functional and nonfunctional 1
requirements 0
4.1.1 Functional requirements 1
0
4.1.2 Non-functional requirements 1
0
4.2 Hardware requirements 11
4.3 Software requirements 11
4.4 Sample Code 13
CONCLUSION 22
REFERENCES 23
APPENDIX
B SCREENSHOTS 25
LIST OF FIGURES
A Code Snippets 24
B Screenshots 25
Online Blogging Application
CHAPTER 1
INTRODUCTION TO DATABASE
Database and database technology has a major impact on the growing use of
computers. It is fair to say that databases play a critical role in almost all areas where
computers are used, including business, electronic commerce, engineering, medicine,
genetics, law, education, and library science. The word database is so commonly used that
we must begin by defining what the database is.
Our initial definition is quite general. A database is a collection of related data. By
data, we mean known facts that can be recorded and that have implicit meaning. For
example, consider the names, telephone numbers, and addresses of the people you know.
You may have recorded this data in an indexed address book or you may have stored it on a
hard drive, using personal computers and software such as Microsoft excel. This collection
of related data with an implicit meaning is a database.
The preceding definition of a database is quite general, for example, we may consider
the collection of words that make up this page of text to be related data and hence to
constitute a database. However, the common use of the term database is usually more
restricted. A database has the following properties:
● A database represents some aspect of the real world, sometimes called the mini world
or the universe of discourse. The changes to the mini world are reflected in the
database.
● A database is a logically coherent collection of data with some inherent meaning. A
random assortment of data cannot correctly be referred to as a database.
● A database is designed, built and populated with data for a specific purpose. It has an
intended group of users and some preconceived applications in which these users are
interested.
In other words, a database has some source from which data is derived, some degree
of interaction with events in the real world, and an audience that is actively interested in its
contents. The end-users of the database may perform business transactions (for example a
customer buys a camera) or events may happen that may cause the information in the
database to change. In order for a database to be accurate and reliable at all times, it must
be a true reflection of the mini world that it represents; therefore, changes must be reflected
in the database as soon as possible.
A database can be of any size and complexity. A database may be generated and
maintained manually or computerized. For example, a library card catalog is a database that
may be created and maintained manually. A computerized database may be created and
maintained either by a group of application programs written specifically for that task or by
a database management system.
A database is a collection of data, typically describing the activities of one or more
related organizations. For example, a university database might contain information about
the following:
● Entities such as students, faculty, courses, and classrooms.
● Relationships between entities, such as student’s enrolment in courses, faculty
teaching courses, and the use of rooms for courses.
A database management system, or DBMS, is software designed to assist in
maintaining and utilizing a large collection of data. The need for such systems as well as
their use is growing rapidly. The alternative to using a DBMS is to store the data in files
and write application-specific code to manage it.
of data to be searched.
● We must protect the data from the inconsistent changes made by different users
accessing the data concurrently. If applications must address the details of such
concurrent access, this adds greatly to their complexity.
● We must ensure that the data is restored to a consistent state if the system crashes
while changes are being made.
● Operating systems provide only a password mechanism for security. This is not
sufficiently flexible to enforce security policies in which different users have
permission to access different subsets of the data.
● DBMS is a piece of software designed to make the preceding tasks easier. By storing
data in DBMS rather than as a collection of operating system files, we can use the
DBMS’s features to manage the data in a robust and efficient manner. As the volume
of data and the number of users grow hundreds of gigabytes of data and thousands of
users are common in current corporate database DBMS support becomes
indispensable.
Data Integrity and Security: if data is always accessed through DBMS, the DBMS
can enforce integrity constraints. For example, before inserting salary information for an
employee, the DBMS can check that the department budget is not exceeded. Also, it can
enforce access controls that govern what data is visible to different classes of users.
Data Administration: when several users share data, centralizing the administration
of data can offer significant improvements. Experienced professionals who understand the
nature of the data being managed, and how different groups of users use it, it can be
responsible for organizing the data representation to minimize redundancy and for
finetuning the storage of the data to make retrieval efficient.
● The conceptual level has a conceptual schema, which describes the structure of the
whole database for a community of users. The conceptual schema hides the details of
physical storage structures and concentrates on describing entities, data types,
relationships, user operations, and constraints. Usually, a representational data model is
used to describe the conceptual schema when a database system is implemented. This
implementation conceptual schema is often based on a conceptual schema design in a
high-level data model.
● The external or view level includes a number of external schemas or user views.
Each external schema describes the part of a database that a particular user group is
interested in and hides the rest of the database from that user group. As in the previous
level, each external schema is typically implemented using a representational data
model, possibly based on external schema design in a high-level data model.
CHAPTER 2
INTRODUCTION TO PROJECT
process reducing further hassle and issues. It may help collecting perfect management
in details. In a very short time, the collection will be obvious, simple and sensible. It
will help a person to know the management of passed year perfectly and vividly. It also
helps in current all works relative to Online Blogging System. It will be also reduced
the cost of collecting the management & collection procedure will go on smoothly.
2.1.4 Scope
Our project aims at Business process automation, i.e. we have tried to computerize
various processes of Online Blogging System. To utilize resources in an efficient
manner by increasing their productivity through automation.
It satisfies the user requirement.
Be easy to understand by the user and operator.
Be easy to operate.
Have a good user interface.
Be expandable.
CHAPTER 3
DESIGN
The above figure describes the system architecture of Online Blogging System. It
describes how a user uses a system to accomplish a particular goal. System Architecture
help ensure that the correct system is developed by capturing the requirements from the
user's point of view.
When automation first hit business, it was in the form of a huge "Mainframe" computer.
Here, a central computer served the whole business community and was accessed via
dumb terminals. All processing took place on a single computer-and therefore in one
place. All resources associated with the computer (tape and disk drives, printers etc.) were
attached to this same computer. This is single tier (or 1-tier) computing. The application is
reduced as much as possible to avoid errors while entering the data. It also provides error
message while entering invalid data. No formal knowledge is needed for the user to use
this system. Thus, by this all it proves it is user-friendly. A System Architecture is a
standardized set of concepts, practices, and criteria for dealing with a common type of
problem, which can be used as a reference to help us approach and resolve new problems
of a similar nature.
CHAPTER 4
4.1 FUNCTIONAL AND NON-FUNCTIONAL REQUIREMENTS
JAVA:
Java is a widely-used, high-level programming language renowned for its versatility and
portability. Developed by Sun Microsystems in 1995, Java follows the principle of "write once,
run anywhere," meaning that code written in Java can run on any device equipped with a Java
Virtual Machine (JVM). This cross-platform capability is achieved through Java's use of
bytecode, which is compiled from source code and executed by the JVM, rather than directly
by the hardware. Java's robust security features, extensive standard libraries, and strong
community support make it a popular choice for a variety of applications, from web and mobile
applications to large-scale enterprise systems. Its object-oriented design encourages modular
and maintainable code, contributing to its enduring relevance in the software development
industry.
MySQL
Tomcat
Apache Tomcat is a widely-adopted open-source web server and servlet container developed by
the Apache Software Foundation. It is specifically designed to execute Java Servlets and render
web pages that include Java Server Page (JSP) code. Tomcat provides a "pure Java" HTTP web
server environment, allowing Java code to run in a web server, which makes it a cornerstone in
the development and deployment of Java-based web applications. Known for its stability,
scalability, and performance, Tomcat is capable of handling large volumes of traffic and
complex web applications with ease. It supports multiple versions of the Java Servlet and JSP
specifications, ensuring compatibility with a broad range of Java applications. Additionally,
Tomcat's extensibility and the robust support from a large community of developers make it an
indispensable tool for organizations aiming to build and maintain efficient, reliable web
services.
Maven
Apache Maven is a powerful build automation and project management tool primarily used for
Java projects. Developed by the Apache Software Foundation, Maven simplifies the build
process through its use of a standard project object model (POM) and a set of plugins. It
automates the process of compiling code, running tests, generating documentation, and
managing dependencies, significantly enhancing productivity and consistency in software
development. Maven's dependency management is particularly notable, allowing developers to
specify the libraries their project depends on and automatically downloading them from central
repositories, ensuring that projects are always built with the correct versions. Its extensibility
allows for customization through a wide range of plugins and its compatibility with various
IDEs and continuous integration systems makes it a critical tool for modern Java development.
Maven's focus on convention over configuration minimizes setup time and promotes best
practices, making it an essential tool for efficient and effective project management.
Sample Code
database goblog
create table user( id int not null auto_increment primary key, name varchar(500) not null, email
varchar(500) not null unique, password varchar(500) not null, gender varchar(10) not null, about
varchar(1000) default 'Hey ! I am using Tech Blog.' not null, regdate timestamp default
current_timestamp not null, profile varchar(500) default 'user.png' not null );
create table category( cid int not null auto_increment primary key, name varchar(100) not null,
description varchar(1000) );
insert into category(name,description) values("Programming","This Category contains Posts related to
Programming"); insert into category(name,description) values("General Knowledge","This Category
contains Posts related to General Knowledge"); insert into category(name,description)
values("Sports","This Category contains Posts related to Sports"); insert into
category(name,description) values("Science and Technology","This Category contains Posts related to
Science and Technology"); insert into category(name,description) values("Web Technology","This
Category contains Posts related to Web Technology"); insert into category(name,description)
values("Others","This Category contains Posts related to Others");
create table post( pid int not null auto_increment, title varchar(150) not null, content longtext, code
longtext, image varchar(200) default 'post.png', creationdate timestamp default current_timestamp not
null, cid int, id int, primary key (pid), index cid_idx (cid asc) visible, index id_idx (id asc) visible,
constraint cid foreign key (cid) references category (cid) on delete cascade on update cascade,
constraint id foreign key (id) references user (id) on delete cascade on update cascade );
create table likes( lid int not null auto_increment, pid int, uid int, primary key (lid), index pid_idx (pid
asc) visible, index uid_idx (uid asc) visible, constraint pid foreign key (pid) references post (pid)
on delete cascade on update cascade, constraint uid foreign key (uid) references user(id) on delete
cascade on update cascade );
CONCLUSION
In this project, we set out to create an efficient and user-friendly online blogging system using
Java and a relational database management system (DBMS). Through meticulous design,
implementation, and testing, we achieved our goal. Our system allows users to create, edit, and
share blog posts seamlessly. Leveraging Java’s object-oriented features, we built a robust
backend that handles user authentication, post storage, and retrieval. The DBMS played a
pivotal role in managing data consistency and ensuring scalability. As we reflect on our
journey, we recognize the importance of teamwork, problem-solving, and continuous
improvement. Moving forward, we envision further enhancements, such as incorporating
multimedia content and optimizing search functionality.
While developing a system a conscious effort has been made to create and develop a software
package, making use of available tools, techniques and resources – that will generate the proper
system cases. While making the system an eye has been kept on making it as user friendly as
such one may hope that the system will be acceptable to any user and will adequetly meet
his/her needs. As in case of any system development process where are number of short
comings, there have been some short comings in the development of this system also.
REFERENCES
Books:
Fundamentals of Database Systems, Ramez Elmasri and Shamkant B. Navathe, 7th Edition
Links:
Wikipedia.org
Geeksforgeeks
w3schools
APPENDIX ‘A’-
CODE SNIPPETS