Hướng Dẫn Assignment Tạo Các Table Theo Mẫu Sau LOAINHA_PS12345 MALOAI, TENLOAI NGUOIDUNG_PS12345 MAND , HOTEN_ND, GIOITINH, DIACHI_ND, DIENTHOAI, QUAN, EMAIL NHATRO_PS12345 MANT , DIEN
Trang 1Hướng Dẫn Assignment Tạo Các Table Theo Mẫu Sau
LOAINHA_PS12345( MALOAI, TENLOAI)
NGUOIDUNG_PS12345( MAND , HOTEN_ND, GIOITINH, DIACHI_ND, DIENTHOAI, QUAN, EMAIL)
NHATRO_PS12345( MANT , DIENTICH, GIAPHONG, DIACHI_NT, QUAN, MOTA, NGAYDANGTIN, MALOAI, MAND)
DANHGIA_PS12345( ID_DG, NOIDUNG, MAND , MANHATRO , LIKE )
Hướng Dẫn Viết Báo Cáo Giai Đoạn 1
1 Mô Tả Các Table
BẢNG LOAINHA_PS12345
MALOAI Int, identity(1,1) Mã loại nhà PK, not null
TENLOAI Nvarchar(100) Loại hình nhà ở Not null
Tương tự mô tả cho các table còn lại
2 Chụp hình các bước tạo Database ,Table và RelationShip
Trang 2 Đăng nhập hệ thống
Tạo mới Database
Trang 3 Tạo mới Table
Tạo quan hệ cho các Table
3 Nhập Dữ liệu Cho Các Table
Tương tự nhập dữ liệu cho các table còn lại
Lưu ý mỗi Table tối thiểu phải có 10 dòng dữ liệu
Trang 4Giai Đoạn 2
I XÂY DỰNG PROCEDURE
THÊM THÔNG TIN VÀO CÁC BẢNG
1 Tạo thủ tục thêm dữ liệu vào Table NGUOIDUNG
===== Thêm dữ liệu bảng NGUODUNG
====
-IF OBJECT_ID('spThemNguoiDung') IS NOT NULL
DROP PROC spThemNguoiDung
go
CREATE PROC spThemNguoiDUng(
@MAND NVarchar(10)=NULL,
@HOTEN_ND NVarchar(30)=NULL,
@GIOITINH NVarchar( )=NULL,
@DIENTHOAI Varchar(15)=NULL,
@DIACHI_ND NVarchar(50)=NULL,
@QUAN NVarchar(10)=NULL,
@EMAIL Varchar(30)=NULL)
AS
IF (
@MAND IS NULL OR
@HOTEN_ND IS NULL OR
@GIOITINH IS NULL OR
@DIENTHOAI IS NULL OR
@DIACHI_ND IS NULL OR
@QUAN IS NULL OR
@EMAIL IS NULL)
PRINT N'Vui lòng nhập đầy đủ dữ liệu !'
ELSE
BEGIN
BEGIN TRY
INSERT INTO NGUOIDUNG
VALUES(@MAND,@HOTEN_ND,@GIOITINH,@DIENTHOAI, @DIACHI_ND,@QUAN,@EMAIL ) PRINT N'Thông báo: Bạn đã thêm dữ liệu thành công !'
END TRY
BEGIN CATCH
PRINT N'Thông báo: Bạn đã thêm dữ liệu không thành công !' END CATCH
END
Trang 5
Lời gọi thủ tục Thêm người dùng thành công
EXEC spThemNguoiDung 'ngocnb',N'Nguyễn Bảo Ngọc', ,N'390 Nguyễn Văn Lượng,
Phường 16','(+84)907668208',N'Quận GV','ngocnbt@fpt.edu.vn'
Lời gọi thủ tục Thêm người dùng thất bại
EXEC spThemNguoiDung N'Thinm',N'Nguyễn Minh Thi',0
Trang 6 TRUY VẤN DỮ LIỆU
1 Viết thủ tục tìm kiếm phòng trọ thỏa điều kiện
Viết thủ tục tìm kiếm phòng trọ thỏa điều kiện
F OBJECT_ID('spTimKiem_nhatro') IS NOT NULL
DROP PROC spTimKiem_nhatro
go
CREATE PROC spTimKiem_nhatro(
@QUAN NVARCHAR(10)=N'%',
@DIENTICH VARCHAR(10)='%',
@NGAYDANG_MIN DATE=NULL,
@NGAYDANG_MAX DATE=NULL,
@GIA_TIEN_MIN MONEY=NULL,
@GIA_TIEN_MAX MONEY=NULL)
AS
IF @NGAYDANG_MIN IS NULL
SET @NGAYDANG_MIN = (SELECT MIN(NGAYDANGTIN) FROM NHATRO)
IF @NGAYDANG_MAX IS NULL
SET @NGAYDANG_MAX = (SELECT MAX(NGAYDANGTIN) FROM NHATRO)
IF @GIA_TIEN_MIN IS NULL
SET @GIA_TIEN_MIN = (SELECT MIN(GIAPHONG) FROM NHATRO)
IF @GIA_TIEN_MAX IS NULL
SET @GIA_TIEN_MAX = (SELECT MAX(GIAPHONG) FROM NHATRO)
SELECT
Cột 1: Có định dạng ‘Cho thuê phòng trọ tại’ + <địa chỉ> +<Quận>
N'Cho thuê phòng trọ tại ' NHATRO.DIACHI_NT + ' ('+ NHATRO.QUAN + ')'
AS DIA_CHI_PH,
Cột 2: Hiển thị diện tích phòng dưới định dạng chuẩn VN + m2
DIENTICH,
Cột 3: Hiển thị thông tin giá phòng dưới định dạng số, chuẩn VN
CONVERT(VARCHAR, GIAPHONG, )AS GIA,
Cột 4: Hiển thị thông tin mô tả phòng trọ
MOTA,
Cột 5: Hiển thị ngày đăng tin dưới dạng chuẩn VN
CONVERT(VARCHAR, NGAYDANGTIN,105) AS NGAY_DANG,
Cột 6: Hiển thị tên người đăng dưới định dạng sau:
Nếu là Nam, hiển thị: A + <tên người liên hệ>
Nếu là Nữ, hiển thị: C + <tên người liên hệ>
CASE GIOITINH
WHEN 1 THEN 'A.' NGUOIDUNG.HOTEN_ND
WHEN 0 THEN 'C.' NGUOIDUNG.HOTEN_ND
END AS THONG_TIN_NGUOI_LIEN_HE,
Cột 7: Hiển thị số điện thoại liên hệ
NGUOIDUNG.DIENTHOAI,
Cột 8: Hiển thị địa chỉ người liên hệ
NGUOIDUNG.DIACHI_ND
Truy xuất từ các bảng:
FROM NHATRO INNER JOIN NGUOIDUNG ON NGUOIDUNG.MAND =NHATRO.MAND
WHERE NHATRO.QUAN like @QUAN AND DIENTICH like @DIENTICH AND
GIAPHONG BETWEEN @GIA_TIEN_MIN AND @GIA_TIEN_MAX AND
NGAYDANGTIN BETWEEN @NGAYDANG_MIN AND @NGAYDANG_MAX
Trang 7Gọi thủ tục lần thứ nhất
EXEC spTimKiem_nhatro @DIENTICH='12m2', @GIA_TIEN_MAX=2000000
Gọi thủ tục lần thứ 2
EXEC spTimKiem_nhatro @GIA_TIEN_MAX=2000000, @QUAN=N'Quận 5'
Trang 81) XÓA DỮ LIỆU
I QUẢN TRỊ CƠ SỞ DỮ LIỆU
1) TẠO NGƯỜI DÙNG
2) PHÂN QUYỀN NGƯỜI DÙNG