Tổ chức xây dựng cơ sở dữ liệu quản lý tài chính tiền tệ.(quản lý sổ tiết kiệm)

33 554 0
Tổ chức xây dựng cơ sở dữ liệu quản lý tài chính tiền tệ.(quản lý sổ tiết kiệm)

Đ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

I. XÂY DỰNG CƠ SỞ DỮ LIỆUII. CÁC THAO TÁC LÀM VIỆC VỚI CƠ SỞ DỮ LIỆU Câu lệnh SELECT1. Đếm tên khách hàng có tên bắt đầu bằng chữ ‘t’2. Đếm số khách hàng có địa chỉ ở hà nội3. Hiển thị khách hàng (makh, tenkh) có địa chỉ ở thái bình4. Đưa thông tin khách hàng có địa chỉ ở hà nội5. Đưa ra những nhân viên có họ là nguyen6. Hiển thị các thông tin khách hàng mà có tên bắt đầu là cao............

BÀI THẢO LUẬN Đề tài: Tổ chức xây dựng sở liệu quản lý tài tiền tệ Cụ thể: Quản lý sổ tiết kiệm I XÂY DỰNG CƠ SỞ DỮ LIỆU Mô tả toán Khi khách hàng có nhu cầu gửi tiết kiệm ngân hàng, chưa có sổ tiết kiệm ngân hàng nhân viên quầy hướng dẫn lập sổ tiết kiệm cho khách hàng Nếu thông tin đầy đủ hợp lệ nhân viên mở sổ tiết kiệm cho khách hàng Sau lập sổ tiết kiệm, khách hàng gửi thêm tiền vào tài khoản rút tiền tài khoản thông qua hóa đơn Thông tin sổ tiết kiệm bao gồm: Mã tài khoản, số tiền Thông tin khách hàng bao gồm: Mã khách hàng, tên khách hàng, số chứng minh thư nhân dân, địa chỉ, số điện thoại, năm sinh Thông tin nhân viên bao gồm: Mã nhân viên, tên nhân viên, giới tính, năm sinh, địa chỉ, số điện thoại Thông tin hóa đơn bao gồm: Mã hóa đơn, ngày lập, ghi chú, số tiền ghi ghi thông tin khách hàng rút tiền gửi tiền Xác định thực thể - Khách hàng (Mã khách hàng, tên khách hàng, năm sinh, số chứng minh thư nhân dân, địa chỉ, số điện thoại) - Nhân viên (Mã nhân viên, tên nhân viên, năm sinh, địa chỉ, số điện thoại) - Hóa đơn (Mã hóa đơn , mã tài khoản, mã nhân viên, ngày lập, ghi chú, số tiền) - Tài khoản ( Mã tài khoản, mã khách hàng, số dư) Lập bảng create table KH( makh char(10) not null, tenkh nvarchar(30)not null, diachi nvarchar(100)not null, namsinh date not null, CONSTRAINT pk_kh primary key (makh), ); create table NV( manv char(10) not null, tennv nvarchar(30) not null, namsinh date not null, diachi nvarchar(100)not null, CONSTRAINT pk_nv primary key (manv), ); CREATE TABLE TK ( matk char(10) not null, makh char(10) not null, sodu int, tilelaisuat int, CONSTRAINT pk_tk primary key (matk), CONSTRAINT chk_TK CHECK (sodu>0), CONSTRAINT fk_makh_tk FOREIGN KEY (makh) REFERENCES KH(makh), ); CREATE TABLE HD ( mahd int not null, matk char(10), manv char(10), ngaylap date not null, ghichu nvarchar(100) not null, sotien int not null, CONSTRAINT pk_hd primary key (mahd), CONSTRAINT fk_matk FOREIGN KEY (matk) REFERENCES TK(matk), CONSTRAINT fk_manv FOREIGN KEY (manv) REFERENCES NV(manv), CONSTRAINT chk_HD CHECK (sotien>0) ); Thông tin bảng - Bảng khách hàng: - Bảng tài khoản - Bảng hóa đơn - Bảng nhân viên liên kết bảng II CÁC THAO TÁC LÀM VIỆC VỚI CƠ SỞ DỮ LIỆU - Câu lệnh SELECT Đếm tên khách hàng có tên bắt đầu chữ ‘t’ selectCOUNT(makh) from KH where tenkh like't%' Đếm số khách hàng có địa hà nội selectCOUNT(makh) from KH WHERE diachi='ha noi' Hiển thị khách hàng (makh, tenkh) có địa thái bình select makh,tenkh from KH where diachi='thai binh' Đưa thông tin khách hàng có địa hà nội select makh, tenkh, namsinh, diachi, sodienthoai, sochungminh from kh where diachi='ha noi' 13 Đưa thông tin khách hàng có địa bắt đầu chữ N có sốdư tài khoản từ 3000000 đến 10000000 Select kh.tenkh, kh.diachi, kh.namsinh, kh.makh, tk.sodu From KH inner join TK on kh.makh= tk.makh Where (kh.diachi like 'n%') and tk.sodu between 3000000 and 10000000 14 Đưa thông tin khách hàng có số tiền gửi lớn 10000000 select kh.makh,kh.tenkh,kh.namsinh,kh.diachi,kh.sodienthoai,kh.sochungminh, tk.matk,hd.sotien,hd.ghichu from tk inner join hd on tk.matk=hd.matk inner join kh on tk.makh=kh.makh where (hd.sotien > 10000000 and hd.ghichu='gui tien') 15 Thêm khách hàng vào bảng khách hàng insert into kh values (' kh11', 'hoang van ba' , '6/3/1994' ,'namdinh' ,'0987643750' ,'163432745’ ) Sau open bảng khách hàng ta xem tên khách hàng vừa thêm - Truy vấn Sử dụng truy vấn hiển thị danh sách khách hàng có số dư sổ tiết kiệm > 15000000 select KH.makh, KH.tenkh, TK.sodu from KH inner join TK on KH.makh= TK.makh where kh.makh in (select makh from TK where sodu> 15000000) - Khung nhìn VIEW Tạo khung nhìn cho bảng khách hàng create view kh1 as select kh.makh, kh.tenkh,kh.diachi,tk.sodu from kh inner join tk on kh.makh = tk.makh Để xem khung nhìn vừa tạo ta ấn chuột phải vào view chọn refresh -> ấn chuột trái vào view-> click chuột trái vào dbo.khachhang -> chọn open view để mở khung nhìn vừa tạo - Tạo thủ tục Tạo thủ tục địa khách hàng hiển thị thủ tục create proc a @diachi char(30) as select makh,tenkh,namsinh,diachi,sodienthoai,sochungminh from kh Where (diachi=@diachi) Hiên thủ tục : execute a 'ha noi' 2.Viết hàm thủ tục đưa danh sách khách hàng có mã khách hàng nhập vào từ bàn phím create proc abcdeghi @makh char (100) as select makh, tenkh, diachi from KH where makh=@makh exec abcdeghi 'kh5' -Hàm FUNCTION Viết hàm tạo bảng thống kê khách hàng (mã khách hàng, tên khách hàng) có số dư lớn 5000000 create function TKe() returns table as return (select KH.tenkh, KH.makh, TK.sodu from KH inner join TK on KH.makh=TK.makh where sodu>'5000000') go select tenkh, makh,sodu from TKe() - Hàm trigger Sau ta cậpnhật liệu cho bảng khách hàng SQL Server hiển thị nội dung bảng xem sau: Trigger tự động cập nhập số dư tài khoản CREATE TRIGGER [dbo].[sodu] ON [dbo].[HD] FOR INSERT AS BEGIN declare @d char(10) declare @a int declare @b int declare @c int set @a=0 set @b=0 select @a= inserted.sotien from inserted where inserted.ghichu ='gui tien' select @b= inserted.sotien from inserted where inserted.ghichu='rut tien' set @c= @a-@b UPDATE [xxx].[dbo].[TK] SET TK.sodu = TK.sodu +@c from TK inner join inserted on TK.matk=inserted.matk END CREATE TRIGGER [dbo].[sodudl] ON [dbo].[HD] FOR DELETE AS BEGIN declare @d char(10) declare @a int declare @b int declare @c int set @a=0 set @b=0 select @a= deleted.sotien from deleted where deleted.ghichu ='gui tien' select @b= deleted.sotien from deleted where deleted.ghichu='rut tien' set @c= @b-@a update [xxx].[dbo].[TK] SET TK.sodu = TK.sodu +@c from TK inner join deleted on TK.matk=deleted.matk END CREATE TRIGGER [dbo].[soduup] ON [dbo].[HD] FOR UPDATE AS BEGIN declare @d char(10) declare @a int declare @b int declare @c int set @a=0 set @b=0 select @a= updated.sotien from updated where updated.ghichu ='gui tien' select @b= updated.sotien from updated where updated.ghichu='rut tien' set @c= @a-@b UPDATE [xxx].[dbo].[TK] SET TK.sodu = TK.sodu +@c from TK inner join updated on TK.matk=updated.matk END III Tạo form kết nối liệu - Form tài khoản - Form thông tin khách hàng - Form thông tin nhân viên - Form hóa đơn [...]... nhân viên với điều kiện mã nhân viên lớn hơn 3 : select manv,tennv,namsinh,diachi,sodienthoai,sochungminh from nv where manv>'nv3' 8 Viết hàm truy vấn tính tổng tiền khách hàng đã mua trong hóa đơn select SUM (sotien) from HD 9.Tính số dư trong tài khoản của các khách hàng có địa chỉ ở hà nội select SUM (TK.sodu) from KH inner join TK on KH.makh = KH.makh where (KH.diachi='ha noi') 10 Đưa ra khách... TK.sodu from KH inner join TK on KH.makh=TK.makh where sodu>'5000000') go select tenkh, makh,sodu from TKe() - Hàm trigger Sau khi ta cậpnhật dữ liệu cho bảng khách hàng SQL Server sẽ hiển thị nội dung của bảng xem như sau: Trigger tự động cập nhập số dư trong tài khoản CREATE TRIGGER [dbo].[sodu] ON [dbo].[HD] FOR INSERT AS BEGIN declare @d char(10) declare @a int declare @b int declare @c int set... updated.sotien from updated where updated.ghichu='rut tien' set @c= @a-@b UPDATE [xxx].[dbo].[TK] SET TK.sodu = TK.sodu +@c from TK inner join updated on TK.matk=updated.matk END III Tạo form kết nối dữ liệu - Form tài khoản - Form thông tin khách hàng - Form thông tin nhân viên - Form hóa đơn ... các thông tin makh, tenkh, diachi,matk, sotien, sodu mà số dư trong tài khoản nhỏ hơn 8000000 select kh.makh, kh.tenkh, kh.diachi, tk.matk, hd.sotien, tk.sodu from tk inner join hd on tk.matk=hd.matk inner join kh on tk.makh=kh.makh where (TK.sodu < '8000000') 13 Đưa ra thông tin khách hàng có địa chỉ bắt đầu bằng chữ N và có sốdư tài khoản từ 3000000 đến 10000000 Select kh.tenkh, kh.diachi, kh.namsinh,... ba' , '6/3/1994' ,'namdinh' ,'0987643750' ,'163432745’ ) Sau đó open bảng khách hàng ta xem được tên khách hàng vừa thêm - Truy vấn con Sử dụng truy vấn con hiển thị danh sách khách hàng có số dư trong sổ tiết kiệm > 15000000 select KH.makh, KH.tenkh, TK.sodu from KH inner join TK on KH.makh= TK.makh where kh.makh in (select makh from TK where sodu> 15000000) - Khung nhìn VIEW 1 Tạo khung nhìn cho bảng... Select kh.tenkh, kh.diachi, kh.namsinh, kh.makh, tk.sodu From KH inner join TK on kh.makh= tk.makh Where (kh.diachi like 'n%') and tk.sodu between 3000000 and 10000000 14 Đưa ra thông tin khách hàng có số tiền gửi lớn hơn 10000000 select kh.makh,kh.tenkh,kh.namsinh,kh.diachi,kh.sodienthoai,kh.sochungminh, tk.matk,hd.sotien,hd.ghichu from tk inner join hd on tk.matk=hd.matk inner join kh on tk.makh=kh.makh ... viên mở sổ tiết kiệm cho khách hàng Sau lập sổ tiết kiệm, khách hàng gửi thêm tiền vào tài khoản rút tiền tài khoản thông qua hóa đơn Thông tin sổ tiết kiệm bao gồm: Mã tài khoản, số tiền Thông...I XÂY DỰNG CƠ SỞ DỮ LIỆU Mô tả toán Khi khách hàng có nhu cầu gửi tiết kiệm ngân hàng, chưa có sổ tiết kiệm ngân hàng nhân viên quầy hướng dẫn lập sổ tiết kiệm cho khách hàng... (sotien>0) ); Thông tin bảng - Bảng khách hàng: - Bảng tài khoản - Bảng hóa đơn - Bảng nhân viên liên kết bảng II CÁC THAO TÁC LÀM VIỆC VỚI CƠ SỞ DỮ LIỆU - Câu lệnh SELECT Đếm tên khách hàng có tên

Ngày đăng: 06/11/2015, 13:57

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan