(train reservation system) documentation

34
DWDS(Railway Reservation System) 1 Individual Assignment Module Code: CE00318-2-DWDS Railway Reservation System Level-2

Upload: anju13rawal

Post on 25-Nov-2015

89 views

Category:

Documents


6 download

DESCRIPTION

this documentation includes the ERD diagrams and normalization of the diagram.it also include the database tables which are used in developing the Train Reservation System.

TRANSCRIPT

DWDS(Railway Reservation System)

DWDS(Railway Reservation System)9

Individual AssignmentModule Code: CE00318-2-DWDSRailway Reservation SystemLevel-2

Handout Date: February 1st, 2012 Hand in Date: April 20th, 2012Submitted to:Submitted by:Prof. Sulekh SharmaAnju Rawal (PT1084404)Acknowledgement

I have taken efforts to complete this assignment. However, it would not have been possible without the kind support of my module lecturer. I would like to extend my sincere thanks to her. My thanks and appreciations also go to my friends in developing the project and people who have willingly helped me out with their abilities.

Name: Anju RawalIntake Code: Pt1084404

ContentsAcknowledgement21.Introduction52.Proposed Solution53.Entity-Relationship Diagram63.1Entities and its Attributes73.2Relationship and Entities83.3Mapping of ERD to Relational Model8Step1: Mapping of Regular Entity Type8Step2: Mapping of Weak Entity Type8Step3: Mapping of Relationships (1: M)9Step4: Mapping of Relationships (N: M)9Step6: Mapping of Ternary Relationships94.Normalization94.1Initial Database Schema105.Table Design and Structure125.1tb_1passenger125.2tb_1Train125.3tb_Route135.4tb_TrainStation135.5tb_UserRegister135.6tb_StatusTrain145.7tb_Station145.8tb_2passenger145.9tb_2Train155.10tb_Reservation155.11Database Diagram166.DDL Statements166.1Create Database166.2Create Tables166.2.1tb_1passenger166.2.2tb_2passenger176.2.3tb_1Train176.2.4tb_2Train176.2.5tb_Reservation186.2.6tb_Route186.2.7tb_Station186.2.8tb_StationTrain196.2.9tb_TrainStation196.2.10tb_UserRegister197.DML Statements207.1Search Queries207.2Booking Queries237.3Cancellation Queries237.4Insert Queries237.4.1Insert Query 1237.4.2Insert Query 2237.5Update Queries247.5.1Update Query 1247.5.2Update Query 2248.Reports258.1Report1: All Trains258.2Report 2: Passengers259.Toolbar2610.Conclusion2611.References26Book References:27Website References27

1. Introduction

In our module DWDS (Database and Web Database Systems), we will learn about the databases, how they are created and used in websites. We will learn about the different commands and how to generate a report.Know talking about our assignment part, we have to design and develop a database based system which is fully web-enabled. System which, we have to make is ONLINE RAILWAY RESERVATION SYSTEM which is an automated computerized system and designed to replace the current system and to provide the passengers easy to book their reservations online. The functionalities and modules of the system are organized in such a well manner that railway reservation processes and railway policies can be operated very smoothly.The basic functions being performed by the system are reservation and cancellation. These functions will be handled with the help of following sub functions: - Manages information about the trains. Manages information about the passenger. Manages the details of reservation fees, any concessions etc. Management of reserved, waiting, cancelled tickets.

Some features of system are: A train master who have access to add and modify the train information. Automatically, fare will be calculated as per the distance between two stations, train seat allocation, etc. Reservation enquiry. Train schedule to enter train journey details include all the station name, arrival time and departure time.2. Proposed Solution

Nowadays, lifestyle of every single person is very busy and full of hectic schedule. Nobody have time to stand in queue for hours and make their reservations. Online reservation system is the solution for this problem. Some facilities which system will provide to the passengers: Firstly, passenger has to register to book tickets and do other thing. Passengers can book their tickets for the train in which seats are available. Passengers can cancel the tickets at any time. Passengers can view the history details of their systems.Railway administrator is the other part of this system. Administrator has full access and right of modification to all the information stored in the database at the server. Some of the facilities which admin can access: Admin can add, modify and delete the train information. Admin can modify the details of the registered users. Admin manages the details of reservation fees, any concessions etc.3. Entity-Relationship Diagram

3.1 Entities and its Attributes

EntitiesAttributes

StationstationId, stationName

TraintrainId, trainName, availableDays, fareClass1, fareClass2, fareClass3, seatClass1, seatClass2, seatClass3.

PassengerticketId, seatNo, name, age, gender, status, class,.

RoutearivalTime, departureTime, stopNo, distance

Train StatusavailableDate, totalAvaillSeatC1, totalAvaillSeatC2, totalAvaillSeatC3, bookedSeat, waitingSeats

UseruserId, password, name, age , gender

3.2 Relationship and Entities

RelationshipEntities participated

ReservationUser, Passenger, TrainStatus

HasTrain , TrainStatus

HasRoute, Train, Station

tSourceTrain, Station

tDestinationTrain, Station

pSourceStation, Passenger

pDestinationStation, Passenger

3.3 Mapping of ERD to Relational ModelStep1: Mapping of Regular Entity TypeStrong Entity TypeRelation

TrainTrain(trainId, trainName, availableDays, seatClass1,seatClass2,seatClass3, fareClass1, fareClass2, fareClass3)

StationStation(stationId, stationName)

UserUser(userId, password, name, age, gender)

Passenger(ticketId, name, age, gender,status,class, seatno, sourceId, destinationId)

Step2: Mapping of Weak Entity TypeWeak Entity TypeRelation

RouteRoute (trainNo, stopNo., arrivalTime, departureTime, distance )

Train StatusTrainStatus (TrainNo, availableDate, totalSeatC1, totalSeatC2, totalSeatC3, bookedSeats, waitingSeats)

Step3: Mapping of Relationships (1: M)RelationEntity TypesApproachChanged Relation

pSourcePassenger, StationForeign Key ApproachPassenger (TicketId , ... SourceId)

pDestinationPassenger, StationForeign Key ApproachPassenger (TicketId .DestinationId)

tSourceTrain, StationForeign Key ApproachTrain (TrainNo, SourceId)

tDestinationTrain, StationForeign Key ApproachTrain (TrainNo, ..DestinationId)

HasTrain, TrainStatusForeign Key ApproachTrainStatus (TrainNo, AvailableDate , ..)

HasTrain, RouteForeign Key ApproachRoute (TainNo, StopNo, ..)

Step4: Mapping of Relationships (N: M)RelationEntity TypeAppraochChanged Relation

HasRoute, StationCross ReferencingTrainStation(TrainNo, StationId, StopNo)

Step6: Mapping of Ternary Relationships RelationEntity TypeAppraochChanged Relation

ReservationUser, Passenger, Train StatusCross ReferencingReservation (User id, Ticket id, Train no., AvailDate, Travel Date, Status)

4. Normalization

Normalization is a database design technique, which begins by examining the relationships (called functional dependencies) between attributes (Database Systems, 2008). There are three main normal forms, each with increasing levels of normalization: First Normal Form (1NF):Each field in a table contains different information. Second Normal Form (2NF):Each field in a table that is not a determiner of the contents of another field must itself be a function of the other fields in the table. Third Normal Form (3NF):No duplicate information is permitted.4.1 Initial Database SchemaUNF:User:UserNamePasswordNameAgeAddress

Station:StationIdStationName

Train:TrainNoTrainNameTypeAvailDaysSourceIdDestinationId

SeatClass1SeatClass2SeatClass3FareClass1FareClass2FareClass3

Route:TrainNoStopNoArrivalTimeDepartureTimeDistSource

TrainStation:TrainNoStationIdStopNo

Reservation:UserNameTicket IdTrainNoAvailDateTravelDateStatus

Passenger:TicketIdNameAge GenderSeatNoClass

StatusSourceIdDestinationId

StatusTrain:TrainNoAvailDateTotalSeatC1TotalSeatC2TotalSeatC3BookSeatC1

BookSeatC2BookSeatC3WaitSeatC1WaitSeatC2WaitSeatC3

1NF:Relation in 1NF:User: Station: Route:TrainStation:Resevation:StatusTrain:Relation that are not in 1NF:Train:Passenger:Conversions of Relations into 1NF that are not in 1NF:Train:TrainNoTrainNameTypeAvailDaysSourceIdDestinationId

SeatClass1SeatClass2SeatClass3FareClass1FareClass2FareClass3

Into 1NFTrain1:TrainNoTrainNameTypeSourceIdDestinationIdSeatClass1

SeatClass2SeatClass3FareClass1FareClass2FareClass3

Train2:TrainNoAvailSunAvailMonAvailTueAvailWedAvailThr

AvailFriAvailSat

Passenger:TicketIdNameAge GenderSeatNoClass

StatusSourceIdDestinationId

Into 1NFPassenger1TicketIdSeatNoNamePasngrAgePasngrGenderPasngrStatus

Passenger2TicketIdIdSourceIdDestinationTrainClass

All above relations have full functional dependencies, so they are already in 2NF. Also, they do not have any transitive relations; hence they are also in 3NF.5. Table Design and Structure5.1 tb_1passenger

Fig. 5.1Constraints: Primary Key: TicketId, 5.2 tb_1Train

Fig. 5.2Constraints: Primary Key: TrainNo5.3 tb_Route

Fig. 5.3Constraints: Primary Key: TrainNo+StopNo, Foreign Key-> TrainNo5.4 tb_TrainStation

Fig. 5.4Constraints: Primary Key: TrainNo+StationId+StopNo, Foreign Key-> TrainNo, StationId, StopNo.5.5 tb_UserRegister

Fig. 5.5Constraints: Primary Key: UserName5.6 tb_StatusTrain

Fig. 5.6Constraints: Primary Key: TrainNo+AvailDate, Foreign Key-> TrainNo5.7 tb_Station

Fig. 5.7Constraints: Primary Key: StationId5.8 tb_2passenger

Fig. 5.8Constraints: Primary Key: TicketId+SeatNo, Foreign Key-> TicketId5.9 tb_2Train

Fig. 5.9Constraints: Primary Key: TrainNo, Foreign Key-> TrainNo5.10 tb_Reservation

Fig. 5.9Constraints: Primary Key: UserName+TravelDate+TrainNo+TicketId+SeatNo, Foreign Key-> UserName, TicketId, TrainNo, SeatNo.5.11 Database Diagram

6. DDL Statements6.1 Create Database

create database dbRailway44046.2 Create Tables6.2.1 tb_1passenger

Use dbRailway4404 go

Create table tb_1passenger(TicketId varchar (20) not null PRIMARY KEY,IdSource varchar(20) not null,IdDestination varchar(20) not null,TrainClass varchar (20))6.2.2 tb_2passenger

use dbRailway4404 go

create table tb_2passenger( TicketId varchar(20) not null,SeatNo int not null ,NamePasngr varchar(50) not null,AgePasngr int not null,GenderPasngr varchar(6) not null,StatusTicket varchar(15) not null, Primary Key (TicketId, SeatNo), Foreign Key (TicketId) REFERENCES tb_1passenger (TicketId))on update cascade

6.2.3 tb_1Train

use dbRailway4404 go

create table tb_1Train(TrainNo varchar(10) not null,TrainName varchar(50) not null,IdSource varchar(20) not null,IdDestination varchar (20) not null,Class1Seat int not null,Class2Seat int not null,Class3Seat int not null,Class1Fare float not null,Class2Fare float not null,Class3Fare float not null,Primary Key (TrainNo))

6.2.4 tb_2Train

use dbRailway4404 go

create table tb_2Train(TrainNo varchar(10) not null,AvailSun varchar(5),AvailMon varchar(5),AvailTue varchar (5),AvailWed varchar (5),AvailThr varchar (5),AvailFri varchar (5),AvailSat varchar (5),Primary Key (TrainNo),Foreign Key (TrainNo) REFERENCES tb_1Train(TrainNo)on update cascade on delete cascade)6.2.5 tb_Reservation

use dbRailway4404 go

create table tb_Reservation(UserName varchar (15) not null,TicketId varchar(20) not null,TrainNo varchar(10) not null,TravelDate date not null,BookingDate date not null,Status varchar(15) not null,SeatNo int not null,Primary Key (UserName, TicketId, TrainNo, TravelDate,SeatNO),Foreign Key (UserName) REFERENCES tb_UserRegister(UserName)on update cascade on delete cascade,Foreign Key (TicketId) REFERENCES tb_1passenger (TicketId)on update cascade,Foreign Key (TrainNo) References tb_1Train (TrainNo)on update cascade on delete cascade,Foreign Key (SeatNo) REFERENCES tb_2passenger (SeatNo)on update cascade)6.2.6 tb_Route

Use dbRailway4404 go

create table tb_Route( TrainNo varchar(10) not null,StopNo int not null,TimeArrival time(7) not null,TimeDeparture time(7) not null,SourceDistance float not nullPrimary Key (TrainNo,StopNo),Foreign Key (TrainNo) References tb_1Train (TrainNo)on update cascade on delete cascade)6.2.7 tb_Station

Use dbRailway4404 go

create table tb_Station( StationId varchar(10) not null,StationName varchar (20), not null,Primary Key (StationId))6.2.8 tb_StationTrain

Use dbRailway4404 go

create table tb_StatusTrain(TrainNo varchar(10) not null,TotalSeatC1 int not null,TotalSeatC2 int not null,TotalSeatC3 int not null,BookSeatC1 int not null,BookSeatC2 int not null,BookSeatC3 int not null,WaitSeatC1 int not null,WaitSeatC2 int not null,WaitSeatC3 int not null,Primary Key (TrainNo, AvailDate),Foreign Key (TrainNo) References tb_1Train (TrainNo)on update cascade on delete cascade)6.2.9 tb_TrainStation

Use dbRailway4404 go

create table tb_TrainStation(TrainNo varchar (10) not null StationId varchar(10) not null,StopNo not null,Primary Key (TrainNo, StationId, StopNo)Foreign Key (TrainNo) References tb_1Train (TrainNo)on update cascade on delete cascadeForeign Key (StationId) References tb_Station (StationId)on update cascade on delete no actionForeign Key (StopNo) References tb_Route (StopNo))6.2.10 tb_UserRegister

Use dbRailway4404 go

create table tb_TrainStation(UserName varchar(15) not null,Password varchar(20)not null,Name varchar (50) not null,Age int not null,Gender varchar (6) not null,Birth date not null,Address varchar(50) not null,Email varchar(40) not null,Contact varchar(20) not null,Status varchar (20) not null,Primary Key (UserName))7. DML Statements7.1 Search Queries

For updating, deleting the values of tupples, we first search it from the table, if values match to the searching keyword, then required action take place.Function for selecting data from database table,Public Sub bind() Dim str As String = ConfigurationManager.ConnectionStrings("train").ConnectionString Dim con As New SqlConnection(str) Dim cmd As New SqlCommand("select tb_1Train.*, tb_2Train.AvailSun, tb_2Train.AvailMon, tb_2Train.AvailTue, tb_2Train.AvailWed, tb_2Train.AvailThr, tb_2Train.AvailFri, tb_2Train.AvailSat FROM tb_1Train INNER JOIN tb_2Train ON tb_1Train.TrainNo = tb_2Train.TrainNo", con) con.Open() Dim dr As SqlDataReader = cmd.ExecuteReader() GridView1.DataSource = dr GridView1.DataBind() dr.Close() con.Close() End Sub

Function for updating data into database table,Protected Sub GridView1_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GridView1.RowUpdating Dim row As GridViewRow = GridView1.Rows(e.RowIndex)

Dim trainno As String = CStr(row.Cells(0).Text) Dim trainname As String = CType(row.Cells(1).Controls(0), TextBox).Text Dim sourceid As String = CType(row.Cells(2).Controls(0), TextBox).Text Dim destinationid As String = CType(row.Cells(3).Controls(0), TextBox).Text Dim seatac1 As String = CType(row.Cells(4).Controls(0), TextBox).Text Dim seatac2 As String = CType(row.Cells(5).Controls(0), TextBox).Text Dim seatac3 As String = CType(row.Cells(6).Controls(0), TextBox).Text Dim fareac1 As String = CType(row.Cells(7).Controls(0), TextBox).Text Dim fareac2 As String = CType(row.Cells(8).Controls(0), TextBox).Text Dim fareac3 As String = CType(row.Cells(9).Controls(0), TextBox).Text Dim sun As Boolean = CType(row.Cells(10).Controls(0), TextBox).Text Dim mon As Boolean = CType(row.Cells(11).Controls(0), TextBox).Text Dim tue As Boolean = CType(row.Cells(12).Controls(0), TextBox).Text Dim wed As Boolean = CType(row.Cells(13).Controls(0), TextBox).Text Dim thu As Boolean = CType(row.Cells(14).Controls(0), TextBox).Text Dim fri As Boolean = CType(row.Cells(15).Controls(0), TextBox).Text Dim sat As Boolean = CType(row.Cells(16).Controls(0), TextBox).Text

Dim st As String = ConfigurationManager.ConnectionStrings("train").ConnectionString

Dim con As New SqlConnection(st) Dim sql As String = "update a set a.TrainName = '" & trainname & "', a.IdSource = '" & sourceid & "', a.IdDestination = '" & destinationid & "', a.Class1Seat = '" & seatac1 & "', a.Class2Seat = '" & seatac2 & "', a.Class3Seat= '" & seatac3 & "', a.Class1Fare= '" & fareac1 & "', a.Class2Fare= '" & fareac2 & "', a.Class3Fare= '" & fareac3 & "' FROM tb_1Train a INNER JOIN tb_2Train b ON a.TrainNo = '" & trainno & "'" Dim sql1 As String = "update b set b.AvailSun = '" & sun & "', b.AvailMon = '" & mon & "', b.AvailTue = '" & tue & "', b.AvailWed = '" & wed & "', b.AvailThr = '" & thu & "', b.AvailFri= '" & fri & "', b.AvailSat = '" & sat & "'FROM tb_1Train a INNER JOIN tb_2Train b on b.TrainNo = '" & trainno & "'"

Dim cmd As New SqlCommand(sql, con) Dim cmd1 As New SqlCommand(sql1, con)

con.Open() Dim da As SqlDataReader = cmd.ExecuteReader() 'cmd.ExecuteNonQuery() da.Close()

Dim dr As SqlDataReader = cmd1.ExecuteReader() 'cmd1.ExecuteNonQuery() dr.Close() con.Close() GridView1.EditIndex = -1 bind() End SubFunction for deleting data from database table,Protected Sub GridView1_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GridView1.RowDeleting Dim row As GridViewRow = GridView1.Rows(e.RowIndex)

Dim trainno As String = CStr(row.Cells(0).Text) Dim trainname As String = CType(row.Cells(1).Controls(0), TextBox).Text Dim sourceid As String = CType(row.Cells(2).Controls(0), TextBox).Text Dim destinationid As String = CType(row.Cells(3).Controls(0), TextBox).Text Dim seatac1 As String = CType(row.Cells(4).Controls(0), TextBox).Text Dim seatac2 As String = CType(row.Cells(5).Controls(0), TextBox).Text Dim seatac3 As String = CType(row.Cells(6).Controls(0), TextBox).Text Dim fareac1 As String = CType(row.Cells(7).Controls(0), TextBox).Text Dim fareac2 As String = CType(row.Cells(8).Controls(0), TextBox).Text Dim fareac3 As String = CType(row.Cells(9).Controls(0), TextBox).Text Dim sun As Boolean = CType(row.Cells(10).Controls(0), TextBox).Text Dim mon As Boolean = CType(row.Cells(11).Controls(0), TextBox).Text Dim tue As Boolean = CType(row.Cells(12).Controls(0), TextBox).Text Dim wed As Boolean = CType(row.Cells(13).Controls(0), TextBox).Text Dim thu As Boolean = CType(row.Cells(14).Controls(0), TextBox).Text Dim fri As Boolean = CType(row.Cells(15).Controls(0), TextBox).Text Dim sat As Boolean = CType(row.Cells(16).Controls(0), TextBox).Text

Dim st As String = ConfigurationManager.ConnectionStrings("train").ConnectionString

Dim con As New SqlConnection(st) Dim sql As String = "delete from tb_1Train.TrainNo = '" & trainno & "'" ''Dim sql1 As String = "update b set b.AvailSun = '" & sun & "', b.AvailMon = '" & mon & "', b.AvailTue = '" & tue & "', b.AvailWed = '" & wed & "', b.AvailThr = '" & thu & "', b.AvailFri= '" & fri & "', b.AvailSat = '" & sat & "'FROM tb_1Train a INNER JOIN tb_2Train b on b.TrainNo = '" & trainno & "'"

Dim cmd As New SqlCommand(sql, con) Dim cmd1 As New SqlCommand(sql1, con)

con.Open() Dim da As SqlDataReader = cmd.ExecuteReader() 'cmd.ExecuteNonQuery() da.Close()

'Dim dr As SqlDataReader = cmd1.ExecuteReader() ''cmd1.ExecuteNonQuery() 'dr.Close() con.Close() GridView1.EditIndex = -1 bind() End Sub7.2 Booking Queries 7.3 Cancellation Queries7.4 Insert Queries7.4.1 Insert Query 1

Dim str As String = ConfigurationManager.ConnectionStrings("train").ConnectionString

Dim con As New SqlConnection(Str)Dim sql1, sql2 As String

sql1 = "insert into tb_1Train values('" & txtTrainNo.Text & "', '" & txtTName.Text & "', '" & txtSource.Text & "', '" & txtDestination.Text & "', '" & seat1 & "', '" & seat2 & "', '" & seat3 & "', '" & fare1 & "', '" & fare2 & "', '" & fare3 & "')"

sql2 = "insert into tb_2Train values('" & txtTrainNo.Text & "', '" & sunday & "', '" & monday & "', '" & tuesday & "', '" & wednesday & "','" & thursday & "','" & friday & "','" & saturday & "')"

Dim cmd As New SqlCommand(sql1, con) Dim cmd1 As New SqlCommand(sql2, con) con.Open() Dim dr As SqlDataReader = cmd.ExecuteReader() dr.Close() Dim dr1 As SqlDataReader = cmd1.ExecuteReader() dr1.Close() con.Close()

7.4.2 Insert Query 2

Dim st As String = ConfigurationManager.ConnectionStrings("train").ConnectionStringDim con As New SqlConnection(st)Dim sql1 As String

sql1 = "insert into tb_Route values('" & txttrainNo.Text & "', '" & txtstopNo.Text & "','" & txtarrival.Text & "','" & txtdepart.Text & "', '" & txtdist.Text & "') "

Dim cmd As New SqlCommand(sql1, con)con.Open()Dim da As SqlDataReader = cmd.ExecuteReader()da.Close()con.Close()

7.5 Update Queries7.5.1 Update Query 1

Dim st As String = ConfigurationManager.ConnectionStrings("train").ConnectionString

Dim con As New SqlConnection(st)Dim sql As String = "update a set a.TrainName = '" & trainname & "', a.IdSource = '" & sourceid & "', a.IdDestination = '" & destinationid & "', a.Class1Seat = '" & seatac1 & "', a.Class2Seat = '" & seatac2 & "', a.Class3Seat= '" & seatac3 & "', a.Class1Fare= '" & fareac1 & "', a.Class2Fare= '" & fareac2 & "', a.Class3Fare= '" & fareac3 & "' FROM tb_1Train a INNER JOIN tb_2Train b ON a.TrainNo = '" & trainno & "'"Dim cmd As New SqlCommand(sql, con)con.Open()Dim da As SqlDataReader = cmd.ExecuteReader()da.Close()

7.5.2 Update Query 2

Dim st As String = ConfigurationManager.ConnectionStrings("train").ConnectionString

Dim con As New SqlConnection(st) Dim sql1 As String = "update b set b.AvailSun = '" & sun & "', b.AvailMon = '" & mon & "', b.AvailTue = '" & tue & "', b.AvailWed = '" & wed & "', b.AvailThr = '" & thu & "', b.AvailFri= '" & fri & "', b.AvailSat = '" & sat & "'FROM tb_1Train a INNER JOIN tb_2Train b on b.TrainNo = '" & trainno & "'"

Dim cmd1 As New SqlCommand(sql1, con)

con.Open()

Dim dr As SqlDataReader = cmd1.ExecuteReader() dr.Close()

con.Close()8. Reports8.1 Report1: All Trains

In this Report, all train data are shown in this report like train no, train name, no days train is available, from where train starts and reaches. All details are shown in this report. This report is build with the help of crystal report.

8.2 Report 2: Passengers

In this report, details of all passengers are shown. It will help the admin to maintain the records of users.

9. Toolbar

10. Conclusion

Working on the Project was really a learning experience and we have come a long way in building our concepts of Computer Engineering. The Railway Reservation System developed is purely based on database (SQL). The overall purpose of this system is to computerized the whole process and thus prevent the intervening errors. During the course of this assignment developer has gone through many obstacles which made her to research and though help in increasing knowledge. After applying all the concepts like ERD, mapping and normalization techniques now developer is very well clear with all these concepts and fundamentals which will be going to help in the future.

11. References

Book References:

1. Connolly, Thomas and Begg, Carolyn (ed.) (2008) Database Systems, New Delhi: Dorling Kindersley(India) Pvt. Ltd.

2. Molinaro, Anthony (ed.) (2006) (indain-reprint) SQL Cookbook, New Delhi: Shroff Publishers & Distributors Pvt. Ltd.Website References

3. sql server 2008 - How To update Two tables at a time using a single StoreProcedure? - Stack Overflow. 2013.sql server 2008 - How To update Two tables at a time using a single StoreProcedure? - Stack Overflow. [ONLINE] Available at:http://stackoverflow.com/questions/9511899/how-to-update-two-tables-at-a-time-using-a-single-storeprocedure. [Accessed 3 April 2013].

4. Update Multiple tables at a time . 2013.Update Multiple tables at a time. [ONLINE] Available at:http://social.msdn.microsoft.com/Forums/en-US/sqlgetstarted/thread/0335f90f-c9b4-4983-9eb6-39259b6af394/. [Accessed 7 April 2013].User

Passenger

Train Status

Route

Station

Train

Reservation

Has

Has

pSource

pDestination

tSource

tDestination

Age

UserId

Gender

password

Name

Name

Age

Gender

SeatNo

TicketId

Status

Class

StopNo

ArrivalDate

DepartureDate

Dist

AvDate

TotalSeatC1

TotalSeatC2

TotalSeatC3

BookedSeats

WaitingSeats

StationId

StationName

FareClass3

FareClass2

FareClass1

SeatClass3

SeatClass2

SeatClass1

AvDays

TrainNo

Status

Date