6 12:02:10 PM set serveroutput on; declare vMaKH khachhang.MaKH%type; vHoTen khachhang.HoTen%type; begin vMaKH:='&vMaKH'; select HoTen into vHoTen from khachhang dbms_output.put_linevM
Trang 1ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
1
Trang 22
10:12:17 AM
Trang 33
10:24:08 AM
set serveroutput on;
declare
n number;
gt number;
begin
n:=&n;
gt:=1;
for i in 2 n
loop
gt:=gt*i;
end loop;
dbms_output.put_line(gt);
end;
Trang 44
11:39:15 AM
set serveroutput on;
declare
n number;
begin
n:=&n;
for i in 2 9
loop
dbms_output.put_line(n || ' x ' || i || ' = ' || i*n);
end loop;
end;
Trang 55
11:39:19 AM
Ax2 + B = 0
Ax2 + Bx + C = 0
biết tam giác có hợp lệ không?
biết tam giác có hợp lệ không? Nếu có cho biết loại tam giác: đều, cân, vuông, vuông cân, thường
ngày, tháng, năm có hợp lệ không?
Trang 66
12:02:10 PM
set serveroutput on;
declare
vMaKH khachhang.MaKH%type;
vHoTen khachhang.HoTen%type;
begin
vMaKH:='&vMaKH';
select HoTen into vHoTen from khachhang
dbms_output.put_line(vMAKH || ' co ho ten la: ' || vHoTen);
exception
when no_data_found then
dbms_output.put_line('Khong co MaKH ' || vMaKH);
end;
Trang 77
2:19:34 PM
của nước này?
set serveroutput on;
declare
vNuocSX SANPHAM.NuocSX %type :='&vNuocSX';
vMaSP SANPHAM.MaSP %type ;
vTenSP SANPHAM.TenSP %type ;
cursor curNuocSX is select MaSP,TenSP from SANPHAM where NuocSX = vNuocSX;
begin
open curNuocSX;
fetch curNuocSX into vMaSP,vTenSP;
if curNuocSX%ROWCOUNT=0 then
dbms_output.put_line('Khong co NuocSX ' || vNuocSX);
else
dbms_output.put_line(vNuocSX || ' san xuat cac san pham:');
dbms_output.put_line('MaSP TenSP');
loop
dbms_output.put_line(vMaSP || ' ' || vTenSP);
fetch curNuocSX into vMaSP,vTenSP;
end loop;
end if;
close curNuocSX;
end;
Trang 88
3:21:11 PM
set serveroutput on;
declare
vMaNV NHANVIEN.MaNV %type ;
vHoTen NHANVIEN.HoTen %type ;
vTenSP SANPHAM.TenSP %type ;
cursor curNhanVien is select MaNV,HoTen from NHANVIEN;
begin
open curNhanVien;
loop
fetch curNhanVien into vMaNV,vHoTen;
exit when curNhanVien %NOTFOUND;
dbms_output.put_line(vMaNV || ' ' || vHoTen);
/* - */ declare cursor curSanPham is
select distinct tensp from nhanvien nv,hoadon hd,sanpham sp,cthd ct where nv.manv = hd.manv and hd.sohd = ct.sohd and ct.masp = sp.masp
and nv.manv = vMaNV;
begin
open curSanPham;
loop
fetch curSanPham into vTenSP;
exit when curSanPham %NOTFOUND;
dbms_output.put_line(' ' || vTenSP);
end loop;
close curSanPham;
/* - */ end;
end loop;
close curNhanVien;
end;
Trang 99
3:25:22 PM
được nhập vào
phẩm ứng với mã sản phẩm nhập vào
khách hàng đã mua ứng với mã khách hàng cần tìm
sản phẩm nhập vào
Trang 1010
3:36:49 PM
create or replace function giaithua(n number) return number
is
gt number;
begin
gt:=1;
for i in 2 n
loop
gt:=gt*i;
end loop;
return gt;
end;
set serveroutput on;
declare
n number;
begin
n:=&n;
dbms_output.put_line(n || ' ! = ' || giaithua(n));
end;
Trang 1111
3:53:48 PM
create or replace procedure kiemtraMaKH(vMaKH in char)
is
vHoTen KHACHHANG.HoTen %TYPE ;
begin
select HoTen into vHoTen from khachhang
where MaKH = vMaKH;
dbms_output.put_line(vMAKH || ' co ho ten la: ' || vHoTen);
exception
when no_data_found then
dbms_output.put_line('Khong co MaKH ' || vMaKH);
end;
set serveroutput on;
declare
vMaKH KHACHHANG.MaKH %TYPE ;
begin
vMaKH :='&vMaKH';
kiemtraMaKH (vMaKH);
end;
Tương tự hoàn tất các bài tập khối lệnh bằng function hoặc procedure
Trang 1212
4:19:38 PM
thị thông báo “Đã thêm thành công”?
create or replace trigger trgInsertKhachHang
after insert on KHACHHANG
for each row
begin
dbms_output.put_line('Da them thanh cong');
end;
set serveroutput on;
insert into KHACHHANG(MaKH,HoTen) values('KH90','ABC');
Trang 1313
4:27:38 PM
thông báo “Đã xoá thành công”?
create or replace trigger trgInsertKhachHang
for each row
begin
dbms_output.put_line('Da xoa thanh cong');
end;
set serveroutput on;
delete from khachhang
where makh = 'KH90'
Trang 1414
4:43:54 PM
thị họ tên của khách hàng ứng với hoá đơn đó?
for each row
declare
vMaKH KHACHHANG.MaKH%TYPE;
vHoTen KHACHHANG.HoTen%TYPE;
begin
if :new.MaKH IS NOT NULL then
vMaKH:=:new.MaKH;
select HoTen into vHoTen from khachhang where MaKH = vMaKH;
end if;
end;
set serveroutput on;
insert into HOADON(SoHD,MaKH) values(2001,'KH90');
Trang 1515
4:49:00 PM
thị họ tên của nhân viên ứng với hoá đơn đó
nhật tự động trị giá của hoá đơn ứng với CTHD vừa thêm
toàn bộ các dữ liệu có liên quan của khách hàng này
thì cập nhật lại toàn bộ các dữ liệu có liên quan với sản phẩm này