IMG-LOGO
×

Giáo Trình Môn Học

Khoá học lập trình SQL

Kiến Thức Core SQL Server

[Video] Hướng dẫn cách xác định kiểu dữ liệu, primary key, foreign key trong SQL - My SQL - SQL Server [Video] Hướng dẫn thao tác nhiểu bảng - select - multi table - join, inner join trong SQL Server [Video] Hướng dẫn phân tích CSDL - phân tích bảng, column trong bản - Học lập trình SQL, SQL Server [Video] Hướng dẫn tìm hiểu create, alter , insert table và bản chất primary key, foreign key - SQL Server [Video] Hướng dẫn tìm hiểu select, and, in, like, not in,group by .. having, order by asc, desc - SQL Server [Video] Quản lý sinh viên (create, alter, update, insert, select) - Lập trình SQL Server

View SQL Server

[Video] Hướng dẫn tìm hiểu view trong SQL Server Bài Giảng: Hướng dẫn tìm hiểu view + proc trong SQL - Lập trình SQL Server

Store & Procedure

[Video] Hướng dẫn tìm hiểu proc procedure trong SQL Server - Lập trình SQL Server, MySQL Bài Giảng: Xây dự hệ thống đưa đón học sinh bằng xe bus của Trường Học - Lập trình SQL Server [Video] Xây dựng CSDL quản lý điểm danh aptech - Lập trình SQL Server/MySQL

Trigger

[Video] Học Trigger qua ví dụ - quản lý nhà trên phố - Lập trình SQL Server [Video] Hướng dẫn học trigger qua bài quản lý điểm danh Aptech - Lập trình SQL Server [Video] Bài tập - Quản lý nhân khẩu - Lập trình SQL Server - MySQL




Trang Chủ SQL Server/MySQL Bài tập - Xây dự hệ thống đưa đón học sinh bằng xe bus của Trường Học - Lập trình SQL Server

Bài tập - Xây dự hệ thống đưa đón học sinh bằng xe bus của Trường Học - Lập trình SQL Server

by GokiSoft.com - 21:41 10/01/2022 5,307 Lượt Xem

Bạn được yêu cầu xây dựng database cho hệ thống đưa đón học sinh bằng xe bus cho một trường học có nghiệp vụ như sau

- Bảng học viên gồm các trường : id tự tăng, Tên, địa chỉ, họ tên bố, me, sđt của bố, số điện thoại của mẹ, ngày sinh, giới tính, id địa điểm đón xe.

- Thông tin xe bus : id tự tăng, biển số xe, loại xe, số ghế ngồi, id tài xế

- Tài xế: id tự tăng, tên, sđt, giới tính, địa chỉ

- Lộ trình xe đi : id xe bus, id địa điểm đón

- Địa điểm đón xe : id tự tăng, địa chỉ


Yêu cầu thiết kế hệ thống trên.

Thêm mỗi bảng 5 bản ghi

Tạo Proc xem thông tin lộ trình đi của xe bus : tài xế, biển số xe, địa chỉ đón.

Tạo Proc xem thông tin sinh viên theo biển số xe.

Tao View xem thông tin sinh viên gồm : Tên SV, giới tính, địa chỉ đó

Bình luận



Chia sẻ từ lớp học

hainguyen [T2008A]

Ngày viết: 14:44 05/12/2020



create database Bus_school

use Bus_school

create table student (
	id int primary key identity (1, 1),
	name nvarchar(50),
	address nvarchar(100),
	father_name nvarchar(50),
	mother_name nvarchar(50),
	f_phonenumber int,
	m_phonenumber int,
	birthday date,
	gender nvarchar(10),
	id_address int
)

create table bus (
	id int primary key identity (1, 1),
	number int,
	type nvarchar(30),
	seat int,
	id_driver int
)

create table driver (
	id int primary key identity (1, 1),
	name nvarchar(50),
	phonenumber int,
	gender nvarchar(10),
	address nvarchar(100)
)

create table road (
	id_bus int primary key identity (1, 1),
	id_address int
)

create table Diemdon (
	id int primary key identity (1, 1),
	address nvarchar(100)
)

alter table road
add constraint AD_address foreign key (id_address) references Diemdon(id)

alter table road
drop AD_address

alter table bus
add constraint PK_driver foreign key (id_driver) references driver(id)

alter table road
drop AD_address

alter table student
add constraint PK_address foreign key (id_address) references Diemdon(id)

alter table student
drop PK_address

alter table bus
add constraint PK_bus_road foreign key (id) references road(id_bus)

alter table road 
add id_address2 int

alter table road
add constraint PK_address_id foreign key (id_address2) references student(id)

insert into student(name, address, father_name, mother_name, f_phonenumber, m_phonenumber, birthday, gender, id_address)
values
('TRAN VAN A', 'HA NOI', 'TRAN VAN AA', 'NGUYEN THI A', 0123456789, 0198765432, '2000-01-01', 'Nam', 1),
('TRAN Thi A', 'HA NOI', 'TRAN VAN AB', 'NGUYEN THI AB', 0123346344, 0198774545, '2000-02-02', 'Nu', 2),
('TRAN VAN B', 'NAM DINH', 'TRAN VAN BB', 'NGUYEN THI BB', 0123534534, 0123545452, '2000-11-11', 'Nam', 3),
('TRAN VAN C', 'NAM DINH', 'TRAN VAN CC', 'NGUYEN THI C', 0124563463, 0123534524, '2001-05-01', 'Nam', 4),
('TRAN THI B', 'HA NOI', 'TRAN VAN BA', 'NGUYEN THI BA', 0123234273, 0198687576, '2000-02-04', 'Nu', 5)

insert into Diemdon(address)
values
('HA NOI'),
('NAM DINH'),
('HA NOI'),
('HA NOI'),
('NAM DINH')

insert into driver(name, phonenumber, gender, address)
values
('NGUYEN VAN A', 0123456789, 'Nam', 'HA NOI'),
('NGUYEN VAN B', 0138452638, 'Nam', 'NAM DINH'),
('NGUYEN THI A', 0124569235, 'Nu', 'HA NOI'),
('NGUYEN VAN C', 0123969989, 'Nam', 'NAM DINH'),
('NGUYEN VAN D', 0182369486, 'Nam', 'HA NOI')

insert into bus(number, type, seat, id_driver)
values
(001, 'TOYOTA', 20, 1),
(002, 'AUDI', 30, 2),
(003, 'TOYOTA', 22, 3),
(004, 'HONDA', 20, 4),
(005, 'TOYOTA', 30, 5)

insert into road(id_address)
values
(1),
(2),
(3),
(4),
(5)

select * from student
select * from bus
select * from driver
select * from road
select * from Diemdon

alter table bus
add constraint LK_address foreign key (id) references road(id_bus)

create proc LoTrinhXeBus 
as
begin
	select driver.name, bus.number, road.id_address
	from bus, driver, road
	where driver.id = bus.id_driver and road.id_bus = bus.id
end

exec LoTrinhXeBus 

create proc ThongTinSv
	@biensoxe int
as
begin
	select student.name, student.address, student.gender, bus.number
	from student, bus, road
	where student.id = road.id_address2 and bus.id = road.id_bus and bus.number = @biensoxe
end

exec ThongTinSv 1

create view Thong_Tin_sv
as
select student.name, student.gender, road.id_address
from student, road
where student.id = road.id_address2

select * from Thong_Tin_sv

create clustered index cr_fat on student (father_name)




Đã sao chép!!!