Professional Documents
Culture Documents
House Rental Management System (Reg-No - 478,480,481) Project Report
House Rental Management System (Reg-No - 478,480,481) Project Report
By
Dr. Baranidharan B
Associate Professor, Department of Computing Technologies
We would like to express our gratitude to our Professor, Dr. Baranidharan B ,who
gave us the golden opportunity to do this wonderful project related to DBMS on
the topic "HOUSE RENTAL MANAGEMENT SYSTEM" which also helped
us in doing a lot of research and we came to know about so many new things we
are really thankful to him.
We are also thankful to all the other faculty, teaching and non-teaching staff
members of our department for their kind cooperation and help.
Lastly, we would also like to thank our friends who helped us a lot in finishing
this project within the limited time. We are making this project not only for
marks but to also increase our knowledge.
CONTENTS
:-
S. Particulars Page
no no.
1. Introduction 4-5
5. Applications 29
6. Conclusion 30
7. Bibliography 31
CHAPTER-1
1.INTRODUCTION
For implementing our project , we should use HTML (Hyper Text Markup
Language), it just shows some elements for users and doesn't run any
functions.
When you go to a specific URL, your request is sent to your desired server and
it'll render for your HTML of the site, in fact, the server runs any server-side
functions.The Front-End used in this project is HTML along with the CSS
language. HTML is the standard markup language for creating Web pages.
● Tenant Management: HRMS allows for storing and managing all tenant
information, including personal details, rental history, and lease agreements. It
facilitates communication between landlords and tenants, and helps in tracking
tenant complaints and requests.
● Lease Management: The system can handle all aspects of lease administration,
from drafting and signing leases digitally to monitoring lease expirations and
renewals. It ensures compliance with local rental laws and regulations.
● Booking and Reservations: For short-term rentals, the system can manage
bookings and check-in/check-out processes, similar to a hotel reservation
system.
2.3 Objectives:
● Reduce operating costs: The system can help you manage maintenance
requests efficiently, track expenses, and identify areas for cost savings.
● So , name attribute can have two or more values, after normalizing it, the table
attributes have been modified to
“id,firstname,middlename,lastname,email,contact,house_id,status,date_in”
● In our database,assuming that `id` is the primary key, the table is already in
2NF if none of the other attributes (`firstname`, `middle name`, `last name`,
`email`, `contact`, `house_id`, `status`, `date_in`) are dependent on a part of
the primary key. Since the primary key (`id`) is not a composite key , the table
is already in 2NF.
Let's go through each table and check if they are in 2NF, 3NF, and BCNF.
● Categories Table: This table is already in 2NF, 3NF, and BCNF as there is only
one candidate key (`id`) and no non-prime attribute (`name`) is dependent on a
proper subset of any candidate key¹²⁴.
● Houses Table: This table is in 2NF and 3NF as every non-prime attribute is fully
functionally dependent on the primary key (`id`). However, if there is a
dependency between non-prime attributes (for example, if `price` is dependent
on `description`), then it would not be in BCNF.
● Payments Table: This table is in 2NF and 3NF as every non-prime attribute is
fully functionally dependent on the primary key (`id`). However, if there is a
dependency between non-prime attributes (for example, if `amount` is
dependent on `invoice`), then it would not be in BCNF.
● System_Settings Table: This table is in 2NF, 3NF, and BCNF as there is only
one candidate key (`id`) and no non-prime attribute is dependent on a proper
subset of any candidate key¹²⁴.
● Tenants Table: This table is in 2NF and 3NF as every non-prime attribute is
fully functionally dependent on the primary key (`id`). However, if there is a
dependency between non-prime attributes (for example, if `status` is dependent
on `house_id`), then it would not be in BCNF.
● Users Table: This table is in 2NF and 3NF as every non-prime attribute is fully
functionally dependent on the primary key (`id`). However, if there is a
dependency between non-prime attributes (for example, if `password` is
dependent on `username`), then it would not be in BCNF.
3.2 FRONT-END DESIGN
● HTML provides the basic structure of sites, which is enhanced and modified
by other technologies like CSS and JavaScript.
HTML
HTML is at the core of every web page, regardless of the complexity of a
site or number of technologies involved. It's an essential skill for any web
professional. It's the starting point for anyone learning how to create
content for the web. And, luckily for us, it's surprisingly easy to learn.
CSS
CSS stands for Cascading Style Sheets. This programming language dictates
how the HTML elements of a website should actually appear on the frontend
of the page.
JavaScript
JavaScript is a more complicated language than HTML or CSS, and it wasn't
released in beta form until 1995. Nowadays, JavaScript is supported by all
modern web browsers and is used on almost every site on the web for more
powerful and complex functionality.
3.1.2 Connectivity (front end and Back end):
PHP is an amazing and popular language!
It is powerful enough to be at the core of the biggest blogging system on the web
(WordPress)!. It is deep enough to run the largest social network (Facebook)!,It
is also easy enough to be a beginner's first server side language!
● PHP files can contain text, HTML, CSS, JavaScript, and PHP code
● PHP code are executed on the server, and the result is returned to the browser
as plain HTML
● With PHP you are not limited to output HTML. You can output images,
PDF files, and even Flash movies. You can also output any text, such as
XHTML and XML.
CHAPTER-4
OUTPUT
DDL-CREATE
DDL-DROP
Reports Table
Q1. Display all the tenants whose name starts with a D letter.
Q2. Display all the payments where amount attribute lies between 40000
and 100000;
Q4. Perform Set Operation between Payments table and Houses table.
Q6. Display the max number of price of houses with only house_no and
price attribute in house table.
Q9. Display the tenants who belong to SRM and took a house-flat between
July-2023 and January 2024.
Q10. Count the number of categories with category_id and group them
according to it.
5. Display id and house number of the most expensive house from houses
(houses-table)
● Select id, house_no from houses where price=(select max(price) from
houses);
6. To find the average payment amount made by tenants in an
apartment :
● SELECT AVG(amount) AS avg_payment FROM payments WHERE
tenant_id IN ( SELECT id FROM tenants WHERE house_id IN
( SELECT id FROM houses WHERE category_id = (SELECT id FROM
categories WHERE name = 'Apartment') ) );
Use of Procedures and Triggers
7. Create a procedure to
insert_payment(tenant_id,amount,invoice,date,category_id)
DELIMITER //
DELIMITER ;
8. Create a procedure process_payments that validates payments using
cursors.
DELIMITER //
OPEN cur;
CLOSE cur;
END//
DELIMITER ;
CHAPTER-5
APPLICATIONS
Five potential applications for the project involving rental property management:
2. Tenant Portal: Create a tenant portal where tenants can log in to view their lease
agreements, make rental payments online, submit maintenance requests, and
communicate with their landlords or property managers.
3. Financial Reporting Tool: Build a reporting tool that provides landlords with
insights into their rental property finances, including revenue, expenses, and
profitability metrics. The tool could generate monthly or annual financial reports
and visualize trends over time.
4. Property Listing Website: Develop a platform where landlords can list their
rental properties for prospective tenants to browse and search. The website
could include features such as property search filters, virtual tours, and online
rental applications.
5. Mobile App for Property Inspections: Create a mobile app that allows property
managers to conduct property inspections using their smartphones or tablets.
The app could guide users through inspection checklists, capture photos of
property conditions, and generate inspection reports in real-time.
CHAPTER-6
CONCLUSION
The conclusion of the project depends on various factors such as its objectives,
scope, and the outcomes achieved. Here's a generic conclusion for a project
involving the creation of tables, stored procedures, and queries for managing
rental properties:
Throughout the project, various SQL queries and operations were utilized to
retrieve, filter, aggregate, and manipulate data stored in the database tables.
Examples of these queries include selecting tenant information, calculating
average payments, and performing set operations such as union and intersect.
References: