1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(Tiểu luận) thảo luận học phần quản trị cơ sở dữ liệu đề tài xây dựng và quản trị cơ sở dữ liệu thị trường chứng khoánngân hàng

29 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng và quản trị cơ sở dữ liệu thị trường chứng khoán/ngân hàng
Người hướng dẫn Nghiêm Thị Lịch, Giảng viên
Trường học Trường Đại Học Thương Mại
Chuyên ngành Quản trị cơ sở dữ liệu
Thể loại Tiểu luận
Năm xuất bản 2020
Thành phố Hà Nội
Định dạng
Số trang 29
Dung lượng 2,04 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

- Thông tin về tài khoản được lưu trữ bao gồm: Mã tài khoản duy nhất, mã khách hàng, ngày tạo tài khoản, loại thẻ liên kết và số dư trong tài khoản.. -Một tài khoản có thể thực hiện nhiề

Trang 1

TRƯỜNG ĐẠI HỌC THƯƠNG MẠI Khoa: HTTT Kinh Tế & TMĐT



BÀI THẢO LUẬN

Học phần: Quản trị cơ sở dữ liệu

Đề tài: Xây dựng và quản trị cơ sở dữ liệu thị trường

Trang 2

BẢNG PHÂN CÔNG NHIỆM VỤ NHÓM 14

STT Mã sinh viên Họ và tên Nhiệm vụ

66 17D190031 Nguyễn Thị Phương Thảo Phân quyền

67 18D190103 Nguyễn Thị Thơm Nhập dữ liệu, trigger

68 18D190225 Nguyễn Kim Thư Query

69 18D190105 Vũ Thị Kim Thư (NT) Đặt bài toán, phân công việc,

Stored procedure, function

70 18D190106 Lưu Hoài Thương (TK) Vẽ mô hình ER, quan hệ, view

Trang 3

BẢNG ĐÁNH GIÁ KẾT QUẢ THẢO LUẬN NHÓM 14

66 17D190031 Nguyễn Thị Phương Thảo

Trang 4

Cộng hòa xã hội chủ nghĩa Việt Nam Độc lập – Tự do – Hạnh phúc

Hà Nội, ngày 10 tháng 10 năm 2020

BIÊN BẢN THẢO LUẬN NHÓM

Hôm nay, đúng vào lúc 8h10 ngày 10/10/2020, nhóm 14 tiến hành thảo luận nhómhọc phần Quản trị cơ sở dữ liệu với những nội dung sau đây:

 Thành phần tham dự: tất cả thành viên nhóm 14

 Nội dung thảo luận :

- Các thành viên thảo luận online

- Lên ý tưởng bài thảo luận

- Phân chia công việc

Cả nhóm đều tham gia thảo luận và thống nhất ý kiến phân công để hoàn thành bài thảo luận

Nhóm trưởng chốt ý tưởng cũng như nhiệm vụ sau đó phân chia cụ thể cho từng thànhviên trong nhóm

Buổi thảo luận kết lúc vào lúc 20h30 cùng ngày

Biên bản thảo luận đọc trước tất cả các thành viên trong nhóm Cả nhóm đồng ý với những gì đã viết

Nhóm trưởng Thư ký

Vũ Thị Kim Thư Lưu Hoài Thương

Trang 5

Cộng hòa xã hội chủ nghĩa Việt Nam Độc lập – Tự do – Hạnh phúc

Hà Nội, ngày 19 tháng 10 năm 2020

BIÊN BẢN THẢO LUẬN NHÓM

Hôm nay, đúng vào lúc 19h30 ngày 19/10/2020, nhóm 14 tiến hành thảo luận nhóm học phần Quản trị cơ sở dữ liệu với những nội dung sau đây:

 Thành phần tham dự: tất cả thành viên nhóm 14

 Nội dung thảo luận :

- Các thành viên thảo luận online

- Thêm ý tưởng cho bài thảo luận

- Các thành viên trình bày bài làm hôm trước đã thống nhất

Nhóm trưởng chỉnh sửa , tổng hợp bài làm nhỏ của các thành viên thành bài hoàn chỉnh

Buổi thảo luận kết lúc vào lúc 22h cùng ngày

Biên bản thảo luận đọc trước tất cả các thành viên trong nhóm Cả nhóm đồng ý với những gì đã viết

Nhóm trưởng Thư ký

Vũ Thị Kim Thư Lưu Hoài Thương

MỤC LỤC

Trang 6

CHƯƠNG I: MÔ TẢ VÀ XÁC ĐỊNH CÁC CHỨC NĂNG CỦA BÀI TOÁN 1

1.1 Mô tả bài toán 1

1.2 Mô hình phân cấp chức năng 2

1.3 Quá trình thiết kế mô hình thực thể liên kết (ER) 2

1.4 Mô hình quan hệ 7

CHƯƠNG 2: CÀI ĐẶT CSDL TRÊN HỆ QUẢN TRỊ CSDL 8

2.1 Tạo Database và các Table 8

2.1.1 Tạo Database 8

2.1.2 Tạo bảng Khách hàng 8

2.1.3 Tạo bảng Tài khoản 8

2.1.4 Tạo bảng Giao dịch 8

2.1.5 Tạo bảng Loại giao dịch 8

2.2 Nhập dữ liệu cho bảng 8

2.2.1 Nhập dữ liệu cho bảng Khách hàng 9

2.2.2 Nhập dữ liệu cho bảng Tài khoản 9

2.2.3 Nhập dữ liệu cho bảng Giao dịch 10

2.2.4 Nhập dữ liệu cho bảng Loại giao dịch 10

2.3 Thiết lập các ràng buộc 10

CHƯƠNG 3: KHAI THÁC CSDL 11

3.1 Query 11

3.2 View 13

3.3 Trigger 15

3.4 Procedure 17

3.5 Function 19

3.6 Phân quyền 21

Trang 7

CHƯƠNG I: MÔ TẢ VÀ XÁC ĐỊNH CÁC CHỨC NĂNG CỦA BÀI TOÁN

1.1 Mô tả bài toán

Bài toán quản lý sử dụng dịch vụ Smart Banking của ngân hàng BIDV

Ngân hàng BIDV cung cấp dịch vụ Smart Banking tới khách hàng với các loại giaodịch khác nhau

Khi khách hàng có nhu cầu sử dụng dịch vụ, hệ thống sẽ gửi yêu cầu khách hàng điềnđầy đủ thông tin để đăng kí sử dụng dịch vụ qua app điện thoại Một khách hàng cóthể được tạo bởi nhiều tài khoản khác nhau, nhưng mỗi tài khoản chỉ được sử dụngbởi 1 khách hàng

- Thông tin của khách hàng được lưu trữ gồm: mã khách hàng, họ tên, giới tính, số

điện thoại, địa chỉ, ngày sinh, số CCCD

- Thông tin về tài khoản được lưu trữ bao gồm: Mã tài khoản (duy nhất), mã khách

hàng, ngày tạo tài khoản, loại thẻ liên kết và số dư trong tài khoản

-Một tài khoản có thể thực hiện nhiều giao dịch, nhưng một giao dịch chỉ được thựchiện bởi một tài khoản

- Thông tin về giao dịch bao gồm: Mã giao dịch (duy nhất), mã tài khoản, ngày giao

dịch, loại giao dịch, số tiền giao dịch Ngoài ra, mỗi một giao dịch sẽ tương ứng vớimột loại giao dịch, và một loại giao dịch sẽ được nhiều giao dịch sử dụng

KHACHHANG (MaKH, HoTen, GioiTinh, NgaySinh, DiaChi, SDT, CCCD)

TAIKHOAN (MaTK, Ngaylap, SoDuTK)

GIAODICH (MaGD, SoTienGD, NgayGD)

LOAIGIAODICH (MaLoaiGD, TenLoaiGD)

Trang 8

1.2 Mô hình phân cấp chức năng

Quản lý sử dụng dịch vụ của BIDV Smartbanking

Quản lý khách hàng Quản lý tài khoản Quản lý giao dịch

2 Xóa tài khoản

3 Tìm kiếm tài khoản

1.Tạo mới giao dịch

2.Cập nhật giao dịch

3 Tìm kiếm giao dịch

Báo cáo

1.bc Thông tin khách hàng

2 Thông tin tài khoản

3 Thông tin giao dịch

4.Thống kê giao dịch

Trang 9

1.3 Quá trình thiết kế mô hình thực thể liên kết (ER)

Bước 1: Xác định tập các thực thể.

Thông qua bài toán, tập các thực thể được xác định bao gồm: Khách hàng, Tài khoản,Giao dịch, Loại giao dịch

Bước 2: Xác định mối quan hệ giữa các thực thể

Bước 3: Xác định tập thuộc tính, gắn các thuộc tính cho tập thực thể và mối liên kết.

KHACHHANG (MaKH, HoTen, GioiTinh, NgaySinh, DiaChi, SDT, CCCD)

TAIKHOAN (MaTK, Ngaylap, Loaithe, SoDuTK)

GIAODICH (MaGD, SoTienGD, NgayGD)

LOAIGIAODICH (MaLoaiGD, TenLoaiGD)

Bước 4: Xác định miền giá trị cho các thuộc tính.

Trang 10

DiaChi nvarchar(10) no Địa chỉ

Thực thể: Tài khoảnColumn Name Data Type Allow Null Note

Loaithe nvarchar(10) No Tên tài khoản

Thực thể: Giao dịch

Thực thể: Loại giao dịchColumn Name Data Type Allow Null Note

MaLoaiGD char(10) no Mã loại giao dịchTenLoaiGD nvarchar(50) no Tên loại giao dịch

Bước 5: Xác định thuộc tính khóa.

KHACHHANG (MaKH, HoTen, GioiTinh, NgaySinh, DiaChi, SDT, CCCD)

TAIKHOAN (MaTK, MaKH ,Loaithe, Ngaylap, SoDuTK)

GIAODICH (MaGD, SoTienGD, NgayGD)

LOAIGIAODICH (MaLoaiGD, TenLoaiGD)

Bước 6: Xác định bậc tối thiểu và bậc tối đa cho các mối quan hệ.

Một tài khoản chỉ được sở hữu bởi một khách hàng

Một khách hàng có thể sở hữu một hoặc nhiều tài khoản

Khách hàng (1,1) Sở hữu Tài khoản

Trang 11

Một giao dịch chỉ được thực hiện từ 1 tài khoản

Một tài khoản có thể không được thực hiện giao dịch nào hoặc được thực hiện nhiềugiao dịch

Bước 7: Vẽ mô hình ER

Tài khoản (1,1) Thực hiện Giao dịch

Giao dịch (0,n) Thuộc Loại giao dịch

Trang 12

1.4 Mô hình quan hệ

Dựa vào các quy tắc chuyển đổi từ mô hình ER sang mô hình quan hệ, mô hình ERsau khi chuyển đổi thành mô hình quan hệ được thể hiện trong hình dưới:

Trang 13

Các thuộc tính của thực thể sau khi chuyển đổi cũng có một số thay đổi như sau:

KHACHHANG (MaKH, HoTen, GioiTinh, NgaySinh, DiaChi, SDT, CCCD)

TAIKHOAN (MaTK, Loaithe, Ngaylap, SoDuTK, MaKH)

GIAODICH (MaGD, SoTienGD, NgayGD, MaTK, MaloaiGD)

LOAIGIAODICH (MaLoaiGD, TenLoaiGD)

CHƯƠNG 2: CÀI ĐẶT CSDL TRÊN HỆ QUẢN TRỊ CSDL

2.1 Tạo Database và các Table

2.1.1 Tạo Database

CREATEDATABASE QLNH

Trang 14

2.1.2 Tạo bảng Khách hàng

USE QLNH

CREATETABLE KHACHHANG(

MaKH char(5)Primarykey,

HoTen nvarchar(35) NOTNULL,

NgaySinh dateNOTNULL,

GT nvarchar(5)NOTNULL,

DiaChi nvarchar(10)NOTNULL,

SDT char(10) NOTNULL,

CCCD char(15)NOTNULL,

);

2.1.3 Tạo bảng Tài khoản

CREATETABLE TAIKHOAN(

MaTK char(5)Primarykey,

MaKH char(5)NOTNULL,

LoaiThe nvarchar(10) NOTNULL,

NgayLap dateNOTNULL,

SoDu int,

);

2.1.4 Tạo bảng Giao dịch

CREATETABLE GIAODICH(

MaGD char(5)Primarykey,

MaTK char(5)NOTNULL,

MaLoaiGD char(10)NOTNULL,

SoTienGD int,

NgayGD date NOTNULL,

);

2.1.5 Tạo bảng Loại giao dịch

CREATETABLE LOAIGIAODICH(

MaLoaiGD char(10)Primarykey,

TenLoaiGD nvarchar(50)NOTNULL,

);

2.2 Nhập dữ liệu cho bảng

Trang 15

2.2.1 Nhập dữ liệu cho bảng Khách hàng

2.2.2 Nhập dữ liệu cho bảng Tài khoản

Trang 16

2.2.3 Nhập dữ liệu cho bảng Giao dịch

2.2.4 Nhập dữ liệu cho bảng Loại giao dịch

2.3 Thiết lập các ràng buộc

Trang 17

CHƯƠNG 3: KHAI THÁC CSDL 3.1 Query

1.Đưa ra thông tin về số lần được thực hiện của mỗi loại giao dịch trong năm

2020, sắp xếp theo thứ tự tăng dần của số lần được thực hiện, nếu trùng nhau thì sắp xếp theo thứ tự tăng dần của trường tên loại giao dịch.

SELECT LOAIGIAODICH.MaLoaiGD, LOAIGIAODICH.TenLoaiGD,COUNT

(GIAODICH.MaGD) ASN' SỐ LẦN THỰC HIỆN'

FROM LOAIGIAODICH

INNER JOIN GIAODICH ON LOAIGIAODICH.MaLoaiGD =

GIAODICH.MaLoaiGD

WHEREYEAR(GIAODICH.NgayGD)= 2020

GROUPBY LOAIGIAODICH.MaLoaiGD, LOAIGIAODICH.TenLoaiGD

ORDERBYCOUNT (GIAODICH.MaGD) asc, LOAIGIAODICH.TenLoaiGD ascGO

2 Hiển thị thông tin khách hàng có tài khoản được liên kết với thẻ “Ghi nợ” theo thứ tự tăng dần của số dư tài khoản được thực hiện trên mỗi tài khoản đó.

USE QuanlyDichVu2

SELECT KHACHHANG.MaKH, TAIKHOAN.MaTK, HoTen,SoDu, LoaiThe,

COUNT (MaGD)AS'SỐ LẦN GIAO DỊCH'

FROM TAIKHOAN

INNER JOIN KHACHHANG ON TAIKHOAN.MaKH = KHACHHANG.MaKH

INNER JOIN GIAODICH ON TAIKHOAN.MaTK = GIAODICH.MaTK

WHERE LoaiThe =N'Ghi nợ'

GROUPBY KHACHHANG.MaKH, HoTen, LoaiThe, SoDu, TAIKHOAN.MaTK

ORDERBY SoDu asc

Trang 18

3 Đưa ra thông tin giao dịch được thực hiện gần đây nhất với số tiền giao dịch từ

2 triệu trở nên Thông tin đưa ra bao gồm: mã giao dich, mã tài khoản, tên loại giao dịch, số tiền giao dịch, ngày giao dịch.

use QuanlyNH

SELECT TOP 1 PERCENT GIAODICH.MaGD, GIAODICH.MaTK,

LOAIGIAODICH.TenLoaiGD, GIAODICH.SoTienGD, GIAODICH.NgayGD

FROM dbo.GIAODICH

INNER JOIN dbo.LOAIGIAODICH on dbo.GIAODICH.MaLoaiGD =

dbo.LOAIGIAODICH.MaLoaiGD

WHERE dbo.GIAODICH.SoTienGD > 2000000

ORDERBY GIAODICH.NgayGD desc

4 Hiển thị thông tin top 3 khách hàng có tổng số tiền giao dịch lớn nhất ở Nam Định và Hà Nội

SELECT TOP 3 KHACHHANG.MaKH, HoTen, KHACHHANG.DiaChi,sum

(SoTienGD) ASN'TỔNG TIỀN GIAO DỊCH'

FROM TAIKHOAN

INNER JOIN KHACHHANG ON TAIKHOAN.MaKH = KHACHHANG.MaKH

INNER JOIN GIAODICH ON TAIKHOAN.MaTK = GIAODICH.MaTK

WHERE DiaChi =N'Nam Định'

GROUPBY KHACHHANG.MaKH, HoTen, KHACHHANG.DiaChi

UNION

SELECT TOP 3 KHACHHANG.MaKH, HoTen, KHACHHANG.DiaChi,sum

(SoTienGD) ASN'TỔNG TIỀN GIAO DỊCH'

Trang 19

FROM TAIKHOAN

INNER JOIN KHACHHANG ON TAIKHOAN.MaKH = KHACHHANG.MaKH

INNER JOIN GIAODICH ON TAIKHOAN.MaTK = GIAODICH.MaTK

WHERE DiaChi =N' Hà Nội'

GROUPBY KHACHHANG.MaKH, HoTen, KHACHHANG.DiaChi

ORDERBYsum (SoTienGD)desc

3.2 View

1.Tạo view với bảng khách hàng

create view khachhang_test

as

select MaKH, Hoten, Ngaysinh, SDT

FROM KHACHHANG

SELECT *FROM khachhang_test

2.Tạo view với bảng tài khoản

create view taikhoan_test

Trang 20

3.Tạo view chứa thông tin các khách hàng ở Nam Định tạo tài khoản trong năm

2018 Thông tin gồm có: MaKH, TenKH, GT, Diachi, MaTK, Ngaylap

create view khnd

as

select KHACHHANG.MaKH, KHACHHANG.HoTen, KHACHHANG.GT,

KHACHHANG.DiaChi, TAIKHOAN.MaTK, TAIKHOAN.NgayLap

FROM KHACHHANG

INNER JOIN TAIKHOAN ON KHACHHANG.MaKH = TAIKHOAN.MaKH

WHERE KHACHHANG.DiaChi =N'Nam Định'andyear(TAIKHOAN.NgayLap) =

2018

SELECT *FROM khnd

4.Xóa view

Trang 21

Select KHACHHANG.MaKH,KHACHHANG.HoTen, TAIKHOAN.SoDu,

GIAODICH.MaGD, TAIKHOAN.MaTK

From KHACHHANG, TAIKHOAN, GIAODICH

Where KHACHHANG.MaKH=TAIKHOAN.MaKH

and MaGD='MGD01'and SoDu>2000000

3.3 Trigger

1.Tạo trigger hiển thị thông tin khách hàng sau khi thêm, xóa hoặc sửa dữ liệu

Trang 23

2.Kiểm tra số dư trong thẻ ngân hàng

create trigger trg_checkTK

printN'Số dư tối thiểu phải từ 5000000';

rollbacktransaction end

Trang 24

3.4 Function

1.Nhập vào tên khách hàng cho biết tuổi của khách hàng

CREATEFUNCTION fun_TinhtuoiKH ( @Hoten nvarchar(40))

RETURNSINT

AS

BEGIN

DECLARE @Tuoi INT

SELECT @Tuoi=year(getdate())-year(Ngaysinh)

2.Nhập vào 1 mã GD, tính tổng số tiền giao dịch

CREATEfunction f_tong_SotienGiaoDich

(@MaGD varchar(40))

returnsint

Trang 25

declare @tong int

select @tong=sum(SoTienGD)

declare @namsinh int

select @namsinh =YEAR(NgaySinh)from KHACHHANG where MAKH=@MaKH

if(@namsinh%400 = 0)

return N'Năm sinh của khách hàng này là năm nhuận'

elseif(@namsinh%4=0 and @namsinh % 100 !=0 )

return N'Năm sinh của khách hàng này là năm nhuận'

elsereturn N'Năm sinh không phải năm nhuận'

Trang 26

3.5 Procedure

1.Tạo stored procedure dùng để thêm dữ liệu vào bảng Khachhang

DROPPROCEDURE Sp_ThemKhachHang

CREATEPROC Sp_ThemKhachHang(@MaKH char(5), @HoTen nvarchar(35),

@NgaySinh date, @GT nvarchar(5), @DiaChi nvarchar(10), @SDT char(10),

Trang 27

2 Cập nhật lại giao dịch có mã giao dịch

CREATEPROCEDURE UpDate_GiaoDich

@MaGD varchar(5),@MaGDM varchar(5), @NgayGD date

AS

BEGIN

IFNOTEXISTS (SELECT*FROM GIAODICH WHERE MaGD=@MaGD)

PRINTN'Giao dịch này không tồn tại'

CREATEPROCEDURE HIENTHI_SoTienGD

@SoTienGD INT

AS

IFNOTEXISTS (SELECT*FROM GIAODICH

WHERE SoTienGD <@SoTienGD)

PRINTN'không có khách hàng nào'

ELSE

SELECT c.MaKH, c.HoTen, a.MaGD, a.SoTienGD

FROM GIAODICH a

INNER JOIN TAIKHOAN b ON a.MaTK = b.MaTK

INNER JOIN KHACHHANG c ON b.MaKH = c.MaKH

WHERE a.SoTienGD > @SoTienGD

Trang 28

CREATEUSER Thanhviennhom14 forlogin Nhom14

2.Trao quyền SELECT, INSERT, UPDATE và DELETE trên bảng GDV cho người dùng tên là Thanhviennhom14

GRANTSELECT,INSERT,UPDATEON GD to Thanhviennhom14

Trang 29

3.Thu hồi quyền DELETE trên bảng nhanvien của người dùng tên là

Thanhviennhom14:

REVOKEInsert ON GD to Thanhviennhom14

Ngày đăng: 10/05/2023, 15:04

HÌNH ẢNH LIÊN QUAN

BẢNG ĐÁNH GIÁ KẾT QUẢ THẢO LUẬN NHÓM 14 - (Tiểu luận) thảo luận học phần quản trị cơ sở dữ liệu đề tài xây dựng và quản trị cơ sở dữ liệu thị trường chứng khoánngân hàng
14 (Trang 3)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w