Đăng Nhập

Vui lòng khai báo chính xác tên truy cập và mật khẩu!

Quên mật khẩu?

Đăng Ký

Bạn phải điền đầy đủ thông tin đăng ký!

  


Tìm thấy 3 mục

[HQTCSDL] GIẢI bài tập TH lớp thầy Long có update - Tue May 12, 2015 10:16 pm

-Hiện tại thầy Long đã nói ai làm tới bài 7(trigger) thì có thể nộp luôn cho thầy lấy 10 điểm cuối kì thực hành môn này, ai làm rồi thì có thể bỏ qua, ai chưa làm có thể down về "tham khảo" hoặc làm gì đó làm =))

-Vào luôn phần bài tập (click vào link bên cạnh các câu đợi 5s rồi click vào "Bỏ qua quảng cáo" sẽ tự dẫn đến link down)

Topics tagged under sql on citudn forumvi Captur11

-Câu 1 : tạo bảng http://adf.ly/1H05Ug
-Câu 2 : Truy vấn http://adf.ly/1H05y8
-Câu 3 : view(khung nhìn) http://adf.ly/1H06AT
-Câu 4 : Thủ tục (proc) http://adf.ly/1H06Fo
-Câu 6 : Hàm (function) link : update...
-Câu 7 : Trigger link : update...

*Lưu ý : câu 5 con trỏ cô Kiều bảo không làm vì không ra thi nên mình bỏ qua, các bạn vào đây thường xuyên để cập nhật link câu 6 và câu 7 nha :)

thank for watching!!!
@QTV
xuanhoang_14i2
#news #SQL #source-code

[HQTCSDL] Bài tập thực hành HQT CSDL - Sat Mar 21, 2015 9:04 pm

Tình hình là mình học thực hành HQT-CSDL lớp thầy Nguyễn Thế Xuân Long, và có cho bài tập về nhà (làm từ câu a dến g nhưng ở đây mình làm hết nhé :v )
Cũng gần thi rồi nên mình rảnh ran làm mấy câu truy vấn up lên cho anh em tham khảo
Nếu ai chưa có file bài tập thì có thể xem đề ở đây (trang 5 - bài tập về câu truy vấn)

Trong đó mình bỏ câu i nhé (tại đọc cái câu hỏi chả muốn suy nghĩ @@)
Đây là bài giải của mình - các bạn chỉ chạy từng câu từng câu để kiểm tra kết quả thôi nhé, chạy cùng lúc cũng được nhưng khó xem @@

Code:

--sql
use QLDDH_XUANHOANG --nhớ đổi lại tên database của bạn nhé
go --sử dụng CSDL

--a
select TenHH,SLGiao,DonGiaGiao
from ChiTietGiaoHang ctgh,ChiTietDatHang ctdh,HangHoa hh
where ctdh.MaHH = ctgh.MaHH
 and hh.MaHH = ctdh.MaHH
 and ctdh.MaDat = 'DH01'
go

--b
select MaDat,NgayDat,TenKH
from DonDatHang inner join KhachHang on KhachHang.MaKH = DonDatHang.MaKH
where DonDatHang.MaDat not in(select MaDat from PhieuGiaoHang)
go

--c
select TenHH,DonGiaHH
from HangHoa
where DonGiaHH in (select max(DonGiaHH) from HangHoa)
go

--d
select KhachHang.MaKH,TenKH,count(MaDat) as SLDHang
from KhachHang left join DonDatHang on KhachHang.MaKH = DonDatHang.MaKH
group by KhachHang.MaKH,TenKH
go

--e
select CTGH.MaGiao,NgayGiao,sum(CTGH.SLGiao * CTGH.DonGiaGiao) as N'Tổng Tiền'
from PhieuGiaoHang PGH inner join ChiTietGiaoHang CTGH on PGH.MaGiao = CTGH.MaGiao
where year(PGH.NgayGiao) = 2012
group by CTGH.MaGiao,PGH.NgayGiao
go

--f
select KhachHang.MaKH,TenKH,count(MaDat) as SLDHang
from KhachHang left join DonDatHang on KhachHang.MaKH = DonDatHang.MaKH
group by KhachHang.MaKH,TenKH
having count(MaDat) >= 2
go

--g
select HH.MaHH,TenHH,sum(SLGiao) as N'Tổng SLGiao'
from ChiTietGiaoHang CTGH inner join HangHoa HH on CTGH.MaHH = HH.MaHH
group by HH.MaHH,HH.TenHH
having sum(SLGiao) >= all(select sum(SLGiao) as SLGiao
  from ChiTietGiaoHang CTGH inner join HangHoa HH on CTGH.MaHH = HH.MaHH
  group by HH.MaHH,HH.TenHH
  )
go

--h
update HangHoa
set SLCon = SLCon + 10
where MaHH like 'M%'
go

--j
update KhachHang
set DienThoai = '0905999999'
where MaKH = 'KH006'
go

--k
alter table ChiTietGiaoHang
add ThanhTien int
go --B1 thêm cột ThanhTien có kiểu dữ kiệu int vào bảng CTGH
update ChiTietGiaoHang
set ThanhTien = SLGiao*DonGiaGiao
go --B2 dùng lệnh update để cập nhật dữ liệu cho cột vừa tạo


Chúc các bạn thành công
Mọi câu hỏi liên quan đến bài giải các bạn reply tại topic nhé :3 , thân!
xuanhoang_14i2
#news #SQL #source-code

[HQTCSDL]Bài tập mẫu về quản lí đơn đặt hàng - Wed Mar 18, 2015 11:51 pm

ĐỀ: Tạo một cơ sở dữ liệu quản lý đơn đặt hàng
Lưu ý* : code chạy tốt trên sqlsever 2012, các phiên bản khác sẽ không tương thích ở 1 số dòng lệnh, nếu chưa có sqlsever 2012 thì down ở đây

Tạo 1 query và dán đoạn code sau vào chạy

Code:

--sql
CREATE DATABASE QLDDH
GO --kết thúc mội khối

USE QLDDH --sử dụng cơ sở dữ liệu QLDDH nếu bạn có nhiều CSDL
GO

CREATE TABLE HangHoa --tạo bảng HangHoa
(
   MaHH            char(5),
   TenHH            nvarchar(50),
   DVT               nvarchar(20),
   SLCon            SMALLINT,
   DonGiaHH      int,
   CONSTRAINT pk_HH PRIMARY KEY(MaHH) --khoá chính cho bảng HangHoa là MaHH
)
GO

CREATE TABLE DonDatHang
(
  MaDat        char(5),
  NgayDat        smalldatetime,
  MaKH        char(5),
  Constraint pk_DDH Primary Key(MaDat)
)
GO

CREATE TABLE ChiTietDatHang
(
  MaDat        char(5),
  MaHH        char(5),
  SLDat        smallint,
  Constraint pk_CTDH Primary Key(MaDat,MaHH)
)
GO

CREATE TABLE KhachHang
(
   MaKH      char(5),
   TenKH      nvarchar(50),
   DiaChi      nvarchar(50),
   DienThoai   char(20),
   CONSTRAINT pk_KH PRIMARY KEY(MaKH)
)
GO

CREATE TABLE PhieuGiaoHang
(
   MaGiao      char(5),
   NgayGiao   smalldatetime,
   MaDat      char(5),
   CONSTRAINT pk_PGH PRIMARY KEY(MaGiao)
)
GO

CREATE TABLE ChiTietGiaoHang
(
   MaGiao      char(5),
   MaHH      char(5),
   SLGiao      int,
   DonGiaGiao   int,
   CONSTRAINT pk_CTGH PRIMARY KEY(MaGiao,MaHH)
)
GO

CREATE TABLE LichSuGia
(
   MaHH      char(5),
   NgayHL      smalldatetime,
   DonGia      FLOAT,
   CONSTRAINT pk_LSG PRIMARY KEY(MaHH,NgayHL)
)
GO

ALTER TABLE ChiTietDatHang ADD Constraint fk_CTDH_MaDat Foreign Key(MaDat) references DonDatHang(MaDat),
                        Constraint fk_CTDH_MaHH Foreign Key(MaHH) references HangHoa(MaHH) on update cascade on delete cascade
GO --tạo khoá phụ

ALTER TABLE ChiTietGiaoHang ADD CONSTRAINT fk_CTGH_MaGiao FOREIGN KEY(MaGiao) REFERENCES PhieuGiaoHang(MaGiao) on UPDATE CASCADE on DELETE CASCADE,
                        CONSTRAINT fk_CTGH_MaHH FOREIGN key(MaHH) REFERENCES HangHoa(MaHH) on UPDATE CASCADE on DELETE CASCADE
GO

alter TABLE LichSuGia ADD CONSTRAINT fk_LSG_MaHH FOREIGN key(MaHH) REFERENCES HangHoa(MaHH) ON UPDATE CASCADE ON DELETE CASCADE
GO

ALTER TABLE HangHoa add CONSTRAINT UC_TenHH UNIQUE (TenHH),
                  CONSTRAINT kt_SL CHECK (SLCon >= 0) --kiểm tra trường SLCon phải >=0 thì mới nhập được, ngược lại báo lỗi
GO

ALTER TABLE DonDatHang ADD CONSTRAINT df_DDH DEFAULT GETDATE() FOR NgayDat --mặc định trường ngày giờ là ngày giờ hiện tại
GO

ALTER TABLE KhachHang ADD CONSTRAINT df_dc DEFAULT N'Đà Nẵng' FOR DiaChi
GO

ALTER TABLE DonDatHang
add constraint fk_ddh foreign key(MaKH) references KhachHang(MaKH) on update cascade on delete cascade
GO

INSERT into dbo.HangHoa
values ('BU', N'Bàn ủi Philip', N'Cái', 60, 350000),
('CD', N'Nồi cơm điện sharp', N'Cái',100,700000),
('DM', N'Đầu máy sharp', N'Cái',75,1200000),
('MG', N'Máy giặc SanYo', N'Cái',10,4700000),
('MQ', N'Máy quạt asia', N'Cái',40,400000),
('TL', N'Tủ Lạnh Hitachi', N'Cái',50,5500000),
('TV', N'TiVi JVC 14WS', N'Cái',33,7800000)
GO

INSERT into dbo.KhachHang
values ('KH001',N'Cửa Hàng Phúc Lộc',N'Đà Nẵng',N'0511.3246125'),
('KH002',N'Cửa hàng Hoàng Gia',N'Quảng Nam',N'0510.6333444'),
('KH003',N'Nguyễn Lan Anh',N'Huế',N'0988.148248'),
('KH004',N'Công ty TNHH An Phước',N'Đà Nẵng',N'0511.6987789'),
('KH005',N'Huỳnh Ngọc Trung',N'Quảng Nam',N'0908.888555'),
('KH006',N'Cửa hàng Trung Tín',N'Đà Nẵng','Null')
GO

SET dateformat dmy --định dạng lại ngày giờ theo định dạng ngày-tháng-năm
GO

INSERT INTO LichSuGia --nhập dữ liệu vào bảng LichSuGia
VALUES ('BU','01-01-2011','300000'),
('BU','01-01-2012','350000'),
('CD','06-01-2011','650000'),
('CD','01-01-2012','700000'),
('DM','01-01-2011','1000000'),
('DM','01-01-2012','1200000'),
('MG','01-01-2011','4700000'),
('MQ','06-01-2011','400000'),
('TL','01-01-2011','5000000'),
('TL','01-01-2012','5500000'),
('TV','01-01-2013','5500000'),
('TV','01-01-2014','7800000')
GO

INSERT INTO DonDatHang
VALUES ('DH01','02-02-2011','KH001'),
('DH02','12-02-2011','KH003'),
('DH03','22-01-2012','KH003'),
('DH04','22-03-2012','KH002'),
('DH05','14-04-2012','KH005'),
('DH06','05-08-2012','KH003'),
('DH07','25-11-2012','KH005')
GO

INSERT INTO PhieuGiaoHang
VALUES ('GH01','02-02-2011','DH01'),
('GH02','15-02-2011','DH02'),
('GH03','23-01-2012','DH03'),
('GH05','20-04-2012','DH05'),
('GH06','05-08-2012','DH06')
GO

INSERT INTO ChiTietDatHang
VALUES ('DH01','BU','15'),
('DH01','DM','10'),
('DH01','TL','4'),
('DH02','BU','20'),
('DH02','TL','3'),
('DH03','MG','8'),
('DH04','TL','5'),
('DH04','TV','5'),
('DH05','BU','12'),
('DH05','DM','15'),
('DH05','MG','6'),
('DH05','TL','5'),
('DH06','BU','30'),
('DH06','MG','7')
GO

INSERT INTO ChiTietGiaoHang
VALUES ('GH01','BU','15','300000'),
('GH01','DM','10','1000000'),
('GH01','TL','4','5000000'),
('GH02','BU','10','300000'),
('GH03','MG','8','4700000'),
('GH05','BU','12','350000'),
('GH05','DM','15','1200000'),
('GH05','MG','5','4700000'),
('GH05','TL','5','5500000'),
('GH06','BU','20','350000'),
('GH06','MG','7','4700000')
GO

QTV
#news #SQL #source-code


Về Đầu Trang