1. Trang chủ
  2. » Công Nghệ Thông Tin

Đồ án Oracle quản lý văn phòng phẩm

77 309 9

Đ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

Định dạng
Số trang 77
Dung lượng 7,31 MB
File đính kèm ORACLE.rar (30 MB)

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

Nội dung

Bài viết giúp các bạn tìm hiểu về CSDL Oracle, cách kết nối Oracle lên Winform C và demo chương trình mình họa. Thực hiện truy vấn dữ liệu ứng dụng trên 2 máy tính khách nhau thông qua SQL developer. Tìm hiểu được truy vấn trên Tablespaces, Session:Sử dụng shutdown startup để tắt và mở databaseTạo người dùng user, nhóm quyền, phân quyền trên ứng dụngSao lưu và phục hồi nhất quán, không nhất quánXây dựng các giao dịch có sử dụng các mức cô lập tùy chọnSử dụng kiểu dữ liệu LOB đưa hình ảnh và âm thanhThực hiện audit dữ liệu tự động bằng trigger.

Trang 1

TRƯỜNG ĐH CÔNG NGHIỆP THỰC PHẨM

Nhóm sinh viên thực hiện: 07

BIÊN BẢN

Thống nhất kết quả làm việc nhóm: 07

Môn: Hệ quản trị CSDL Oracle

PHẦN MỀM QUẢN LÝ BÁN HÀNG VĂN PHÒNG PHẨM

Tân Phú, tháng 9/ 2020

Trang 2

Chúng tôi được giảng viên giao thực hiện đồ án: Nguyễn Phương Hạc

ST

T

1 Giới thiệu và mô tả nội dung đề tài

2 Mô tả các nhóm quyền, quyền và profile

3 Thiết kế giao diện ứng dụng

4 Mô tả các giao tác trong đề tài

5 Thiết kế cơ sở dữ liệu

1 Khảo sát mục tiêu và phạm vi đề tài

2 Phân tích và thiết kế mô hình quan hệ

3 Mô tả các chức năng truy vấn, tìm kiếm

4 Mô tả các yêu cầu ràng buộc

5 Chức năng xem SGA, PGA, Session

6 Tìm hiểu kết nối ứng dụng với Oracle

7 Tìm hiểu và tạo database bằng dbca

Trang 3

Đặng Quốc Hải

TUẦN 1 KHẢO SÁT HIỆN TRẠNG VÀ PHÂN TÍCH YÊU CẦU

1 Giới thiệu chung về đề tài

Ngày nay, công nghệ thông tin có những bước phát triễn mạnh mẽ, trong đó phải

kể đến các ứng dụng phần mềm Một số công việc làm bằng thủ công đã dẫn đến việctốn sức, tốn công lại hao tốn quá nhiều thời gian nên dần dần được chuyển sang hệthống tự động hóa Từ đó đem lại sự thuận tiện trong công việc cho con người cũngnhư góp phần làm cho hoạt động mua bán mang tính chuyên nghiệp và đạt hiệu quảhơn Kết quả của nhu cầu thực tế đó là sự ra đời của nhiều phần mềm, công cụ quản lý

và xử lý các công việc thay cho con người như trước đây

Trong quản lý cửa hàng văn phòng phẩm, với số lượng các mặt hàng ngày càng đadạng và phong phú về cả chủng loại cũng như nhà sản xuất Do đó, việc xây dụngphần mềm “Quản lý cửa hàng văn phòng phẩm” giúp cho người bán dể dàng quản lýtình tình mua bán cũng như tình trạng hàng hóa trong cửa hàng Đây là một công cụcần thiết và hiệu quả, giúp cho quản lý công việc dể dàng hơn, tiết kiệm thời gian vàcông sức đáng kể

Cũng tương tự như một siêu thị mini, cửa hàng văn phòng phẩm cửa đề tài đặt ra làmột cửa hàng loại nhỏ, kinh doanh lưu trữ đủ mọi thể loại hàng hóa và bày bán đủnhững thứ cần thiết như đồ dùng học tâp, văn phòng phẩm Với nhiều loại mặt hàngkhông đồng nhất về thể loại khiến cho việc quản lý một cửa hàng văn phòng phẩmkhông phải là điều dể dàng, thậm chí nếu không có cách thức quản lý phù hợp sẻ gây

ra các nhầm lẫn và thất thoát hàng hóa không đáng có Do vậy, để giúp các chủ cửahàng có được sự quản lý chặt chẽ và doanh thu và đem lại sự phục vụ cho khách hàngmột các tốt nhất có thể, phần mềm quản lý cửa hàng văn phòng phẩm tích hợp cácchức năng dành riêng cho chửa hàng văn phòng phẩm và được nhiều cửa hàng hưởngứng, đưa vào ứng dụng một cách hiệu quả

2 Phạm vi và mục tiêu đề tài

a Mục tiêu đề tài

Trang 4

Mục tiêu của đề tài đặt ra là xây dựng hệ thống quản lý cửa hàng văn phòng phẩm,

hỗ trợ cho việc quản lý thông tin các mặt hàng, thông tin nhân viên, thông tin khách hàng và hỗ trợ cửa hàng có được phong cách làm việc chuyên nghiệp, quản lý hiệu quả các hoạt động kinh doanh sản phẩm văn phòng, hướng tới hình ảnh, phong cách

phục vụ Văn minh - Lịch sự - Hiện đại đến khách hàng, tạo một ưu thế cạnh tranh

trước các đối thủ trong ngành

b Phạm vi đề tài

Đề tài được xây dựng cho cửa hàng quản lý văn phòng phẩm quy mô vừa và nhỏ

Đồ án được thực hiện trên cơ sở môn: Công nghệ NET, hệ quản trị cơ sở dữ liệuOracle với sự hỗ trợ: Visual Studio 2013, Oracle Database 19c

3 Mô tả nội dung đề tài

a Cơ cấu tổ chức và cách thức hoạt động

Chủ cửa hàng: Chịu trách nhiệm điều hành chung của cửa hàng Kiểm tra các hoạt

động mua bán của nhân viên, hoạt động xuất nhập kho Lên kế hoạch nhập văn phòngphẩm khi cần thiết và liên hệ với các nhà cung cấp

Nhân viên bán hàng: Làm việc trực tiếp với khách hàng, chăm sóc khách hàng, kiểm

tra số lượng tồn và hóa đơn hằng ngày, ghi chép hóa đơn bán hàng

Cách thức hoạt động:

của khách hàng, số lượng hàng hóa tối thiểu, số lượng hàng tồn trong kho để lập

kế hoạch nhập hàng hóa

nhan viên sẻ in hóa đơn thanh toán cho khách hàng Đối với khách hàng muavới số lượng lớn, chủ cửa hàng sẻ ký kết hợp đồng với khách hàng sau đó xuấthàng hóa cho khách hàng khi đã thanh toán đầy đủ số tiền

hoạt động của cửa hàng, nộp hóa đơn đã bán được và sổ của cửa hàng cho chủcửa hàng

b Xác định bài toán

Input:

tồn, đơn giá nhập, đơn giá bán)

Trang 5

 Các thông tin về nhân viên ( Mã nhân viên, họ tên, điện thoại, chức vụ, địa chỉ )

 Các thông tin về nhà cung cấp ( Mã nhà cung cấp, tên nhà cung cấp, điện thoại )

đơn giá, khách hàng )

đơn giá nhập, nhà cung cấp )

Ouput:

c Các chức năng bài toán

Xây dựng chưng trình quản lý cửa hàng văn phòng phẩm bằng ngôn ngữ C# Chương trình gồm các chức năng sau:

Nhập hàng: Khi nhập hàng thì cần tìm nhà cung cấp để đặt hàng, việc đặt hàng

thành công Nhân viên nhập hàng đó vào trong kho và thực hiện thanh toán tiềncho nhà cung cấp Sau đó tiến hành thống kê, sắp xếp, phân loại hàng hóa theotừng nhóm hàng, đơn giá

Xuất hàng: Khách hàng lựa chọn hàng hóa, sau đó đặt hàng Nhân viên chấp nhận

đơn hàng mà khách hàng đã chọn và tiến hành nhập vào đơn hàng Khách hàngthanh toán tiền, nhân viên cập nhập lại kho hàng và thống kê lại lượng hàng trongkho

Thống kê: Sau mỗi tháng nhân viên sẽ quản lý việc thống kê tháng đó nhập những

loại hàng nào, và chi phí của việc nhập là bao nhiêu Tương tự như vậy nhân viêncũng quản lý được việc xuất hàng Thông qua thống kê nhập và xuất sẽ tính đượcdoanh thu tháng đó lời hay lỗ

Trang 6

4 Bảng mô tả các yêu cầu ràng buộc

ST

T

 Thuộc tính tên phải riêng biệt, không được trùng

 Thuộc tính giới tính chỉ thuộc nam hoặc nữ

 Đơn giá nhập hàng <= đơn giá bán

 Tuổi của nhân viên làm phải >=18

 Cho biết có bao nhiêu hóa đơn được lập trong ngày/tháng đó

hàng có địa chỉ ở Tân Phú?

 Cho biết tên sản phẩm có số lượng tồn lớn nhất?

Trang 7

6 Bảng mô tả các danh mục nhóm quyền, quyền, profile trong đồ án

3

Profile

 Chỉ định thời gian khóa tài khoản đăng nhập sai là 1 ngày

7 Bảng mô tả các giao tác được cài đặt trong đồ án

- Khi thêm 1 sản phẩm từ nhà cung cấp vào cửa hàng thì

số lượng tồn của sản phẩm đó trong kho phải tăng thêm 1

- Khi thêm 1 sản phẩm mà số lượng tồn của sản phẩm trong kho không thay đổi thì giao tác sẽ bị hủy

-8 Phân tích và thiết kế mô hình quan hệ

Trang 8

9 Thiết kế giao diện hệ thống, giao diện chức năng

a Giao diện hệ thống

Trang 9

b Giao diện chức năng

Trang 10

Form nhà cung cấp

Trang 11

Form hóa đơn nhập

Trang 12

TUẦN 2 KẾT NỐI ỨNG DỤNG

1 Kết nối ứng dụng Winform với Oracle

a Thêm thư viện Oracle

Bước 1: Truy cập vào trang web: https://www.nuget.org/packages/Oracle.ManagedDataAccess

Trang 13

Bước 2: Mở visual studio lên, vào Tools => Nuget Packege Manager

Bước 3: Click chuột phải vào Solution, chọn Manager Nuget Packages

Trang 14

public void ketnoi()

Trang 15

Lưu ý: Để thực hiện kết nối, chúng ta tắt Fileware trước

 Thay đổi địa chỉ IP của 2 máy tính minh họa như hình

 Tiến hành kết nối bằng cách thay host: localhost thành host: 181.103.21.3

2 Thực hiện các lệnh trên SQLPlus và Sqldeloper

Trang 17

 Thực hiện các lệnh cơ bản trên SQLDeverlop

3 Thiết kế màn hình đăng nhập với các user khác nhau

a Màn hình kết nối

Trang 18

b Code đăng nhập

public Boolean kiemtraketnoi()

{

String pass = txtpass.Text.Trim();

String port = txtPort.Text.Trim();

String host = txtHost.Text.Trim();

String user = cboUsername.SelectedItem.ToString().Trim();

String oracle = @"Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST =

"+host+")(PORT ="+port+"))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME

return true ;

}

public static String taikhoan = matkhau = "";

private void btnConn_Click( object sender, EventArgs e)

MessageBox Show("Đăng nhập thất bại, Sai tên người dùng hoặc mậtkhẩu",

"Thông báo đăng nhập thất bại", MessageBoxButtons OKCancel, MessageBoxIcon Error);

cboUsername.Text = "";

txtpass.Text = "";

}

}

4 Thiết kế chức năng hệ thống với nhiều lựa chọn

a Tạo file kết nối Oracle

namespace _09_DAMH_QuanLyCuaHangVPP_Oracle

{

class KetNoiOracle

{

public OracleConnection sqlcon;

public OracleCommand sqlcom;

public OracleDataAdapter sqlda;

public OracleDataReader sqldr;

public DataSet ds = new DataSet ();

Trang 19

string strconnect= "Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST

=localhost)(PORT =1523))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME

Trang 21

ketnoi();

sqlcom = new OracleCommand (strsql, sqlcon);

sqldr = sqlcom.ExecuteReader();

while (sqldr.Read())

{

if (sqldr[0].ToString().ToLower() == dauvao.ToLower()) ok = true ; }

ngatketnoi(); return ok; }

public DataTable ExecuteQuery( string query, object [] parameter = null ) {

DataTable data = new DataTable (); using ( OracleConnection connection = new OracleConnection (strconnect)) {

connection.Open(); OracleCommand command = new OracleCommand (query, connection); if (parameter != null ) {

string [] listPara = query.Split( ' ' ); int i = 0; foreach ( string item in listPara) {

if (item.Contains( '@' )) {

command.Parameters.Add(item, parameter[i]); i++;

}

}

}

OracleDataAdapter adapter = new OracleDataAdapter (command); adapter.Fill(data); connection.Close(); }

return data; }

public void loatextbox( TextBox tb, string strselect, byte chiso) {

ketnoi(); sqlcom = new OracleCommand (strselect, sqlcon); sqldr = sqlcom.ExecuteReader(); while (sqldr.Read()) {

tb.Lines[0] = (sqldr[chiso].ToString()); }

ngatketnoi();

Trang 23

d Form chức năng

Trang 24

 Chức năng xem Instance

Trang 25

TUẦN 3 THIẾT KẾ CÁC CHỨC NĂNG

1 Thiết kế các chức năng xem control file, data file, online redo log file

a Thực hiện trên sqlplus/ sqldeveloper

Trang 27

 Data file

 Online redo log file

2 Liệt kê các tablespace hiện có, tìm kiếm thông tin liên quan đến tablespace

Trang 28

 Liệt kê các tablespace hiện có

 Tìm kiếm thông tin liên quan đến tablespace

Trang 29

( Nhập số TS# hoặc NAME vào textbox Tablespace để tìm kiếm)

3 Liệt kê các datafile hiện có, tìm kiếm các datafile liên quan đến một tablespace

OracleDataAdapter fillstud = new OracleDataAdapter ( "Select * from v$datafile Where FILE# ='" + txtData.Text + "' OR CREATION_CHANGE#='" + txtData.Text + "'" , con);

DataTable dt = new DataTable ();

fillstud.Fill(dt);

dataGridView1.DataSource = dt;

con.Close();

} }

Trang 30

 Liệt kê các datafile hiện có

 Tìm kiếm các datafile liên quan (tìm kiếm theo FILE#)

4 Tạo mới, xóa một tablespace (xóa cả datafile và không xóa datafile)

MessageBox Show( "Thêm thành công tablespace" );

DataTable bang1 = ketnoi.ExecuteQuery( "Select * From v$Tablespace" );

Trang 31

DataTable bang1 = ketnoi.ExecuteQuery( "Select * From v$Tablespace" );

dataGridView1.DataSource = bang1;

}

b Giao diện

5 Thêm, xóa một datafile vào một tablespace

a Source code

private void btnThem_Click( object sender, EventArgs e)

{

con.Open();

OracleCommand insert = new OracleCommand ( "Alter Tablespace '" + txtData.Text +

"' ADD Datafile '" +txtData.Text+ "'.dat' Size 10M Autoextend On" , con);

insert.ExecuteNonQuery();

fillStud();

con.Close();

}

Trang 32

b Giao diện

6 Xem thông tin liên quan đến parameter file

8 Mở database

Trang 33

 Thực hiện trên ứng dụng ( nhóm chưa thực hiện được)

9 Xem thông tin liên quan đến alert log

// Thực thi button tìm kiếm từ điển dữ liệu khi nhập vào textbox

private void btnIDic_Click_1( object sender, EventArgs e)

{

if ((txtTuDien.Text == "" ) || (txtTuDien.Text == "Nhập vào từ khóa tìm kiếm" ))

Trang 34

DataTable dt = new DataTable ();

 Xem thông tin các từ điển dữ liệu

Trang 35

TUẦN 4 TẠO DATABASE VÀ PHÂN QUYỀN

1 Sử dụng dbca tạo database có tên là tên đồ án

Trang 42

2 Thiết kế giao diện tạo mới một, chỉnh sửa, xóa profile với một số thông tin được nhóm chọn lọc (ít nhất là 5 thông tin) và hiển thị lên giao diện cho người

sử dụng chọn lựa các thông tin đó

a) Thực hiện trên Sqlplus

MessageBox Show( "Thêm thành công" );

}

c) Thiết kế giao diện

Trang 43

3 Thiết kế giao diện thêm mới, xóa, chỉnh sửa một tablespace và các datafile tương ứng với tablespace

MessageBox Show( "Xóa thành công tablespace" );

DataTable bang1 = ketnoi.ExecuteQuery( "Select * From v$Tablespace" );

}

b) Thiết kế giao diện

Trang 44

4 Thiết kế giao diện tạo mới, thêm, xóa nhóm quyền, quyền

5 Thiết kế giao diện tạo, chỉnh sửa, xóa người dùng.

a) Thực hiện trên sqlplus

b) Code

c) Giao diện

Trang 45

6 Thiết kế giao diện cấp quyền/ nhóm quyền và thu hồi quyền/nhóm quyền

7 Thiết kế tạo, bật, tắt, xóa các chính sách audit dữ liệu của một hoặc vài loại dữ liệu nào đó

BÀI TẬP TUẦN 5

1 Hiển thị các session đang giữ khóa, xóa các session trong danh sách chọn

a Code

KetNoiOracle ketnoi = new KetNoiOracle ();

private void btnHienThi_Click( object sender, EventArgs e)

Trang 46

TUẦN 6 + TUẦN 7 TRUY VẤN DỮ LIỆU

p

d Bảng nhà cung cấp

ST

T

Trang 47

2 TenNCC Nvarchar(50) Tên nhà cung cấp

e Bảng phiếu nhập

ST

T

f Bảng chi tiết phiếu nhập

ST

T

g Bảng hóa đơn

ST

T

h Bảng chi tiết hóa đơn

ST

T

Trang 48

3 SoLuong Int Số lượng bán

2 Lệnh tạo bảng

a Bảng khách hàng

CREATE TABLE KHACHHANG

(

MaKH Char(10) NOT NULL,

TenKH Nvarchar2(50) NULL,

DiaChi Nvarchar2 (50) NULL,

MaSP Char(10) NOT NULL,

TenSP Nvarchar2(50) NULL,

SoLuongTon Int NULL,

DonGiaNhap Integer NULL,

DonGiaBan Integer NULL,

GhiChu Nvarchar2(50) NULL,

CONSTRAINT PK_SanPham PRIMARY KEY (MaSP) );

c Bảng nhân viên

CREATE TABLE NHANVIEN

(

MaNV Char(10) NOT NULL,

TenNV Nvarchar2(50) NULL,

GioiTinh Nvarchar2(3) NULL,

Luong Integer ,

ChucVu Nvarchar2(50),

DiaChi Nvarchar2(50) NULL,

SoDT Number(10) NULL,

NgaySinh Date NULL,

CONSTRAINT PK_NHANVIEN PRIMARY KEY (MaNV) );

d Bảng nhà cung cấp

Trang 49

CREATE TABLE NHACUNGCAP

(

MaNCC Char (10) NOT NULL,

TenNCC Nvarchar2(50) NULL,

SDT NUMBER(10) NULL,

DiaChi Nvarchar2(50) NULL,

CONSTRAINT PK_NHACUNGCAP PRIMARY KEY (MaNCC)

);

e Bảng phiếu nhập

CREATE TABLE PHIEUNHAP

(

SoPhieu Char(10) NOT NULL,

MaNV Char(10) NULL,

NgayNhap Date NULL,

MaNCC Char(10) NULL,

TongTien Integer NULL,

CONSTRAINT PK_PN PRIMARY KEY (SoPhieu),

CONSTRAINT FK_PN_NV FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV), CONSTRAINT FK_PN_NhaCC FOREIGN KEY (MaNCC) REFERENCES

NHACUNGCAP(MaNCC)

);

f Bảng chi tiết phiếu nhập

CREATE TABLE CTPHIEUNHAP

(

SoPhieu Char(10) NOT NULL,

MaSP Char(10) NOT NULL,

SoLuong Int NULL,

DonGia Integer NULL,

GiamGia Integer NULL,

ThanhTien Integer NULL,

CONSTRAINT PK_CTHDN PRIMARY KEY (MAHDN, MAH),

CONSTRAINT FK_CTHDN_PN FOREIGN KEY (SoPhieu) REFERENCES

MaHD Char(10) NOT NULL,

MaNV Char(10) NULL,

NgayBan Date NULL,

Trang 50

MaKH Char(10) NULL,

TongTien Integer NULL,

CONSTRAINT PK_HD PRIMARY KEY (MaHD)

CONSTRAINT FK_HD_NV FOREIGN KEY (MaNV)

MaHD Char(10) NOT NULL,

MaSP Char(10) NOT NULL,

SoLuong int NULL,

DonGia integer NULL,

GiamGia Integer NULL,

ThanhTien Integer NULL,

CONSTRAINT PK_CTHD PRIMARY KEY (MaHD, MaSP),

CONSTRAINT FK_CTHD_HD FOREIGN KEY (MaHD) REFERENCES

Trang 51

4 Truy vấn dữ liệu

a) Dữ liệu lấy có ngày tháng năm, có thay đổi định dạng theo ngày, tháng và năm

Select COUNT(*) AS N"S HÓA Đ N" From HOADON H Ố Ơ

Where To_Char (H.NgayBan,'MM') In ('05') AND To_Char(H.NgayBan,'YYYY') In ('2019');

SELECT HoTen FROM NHANVIEN WHERE NgaySinh=’05-SEP-1998’;

b) Sắp xếp dữ liệu

 Cho biết thông tin tên nhân viên, chức vụ, ngày sinh (hire_date) của những nhân viên được sinh từ ngày 20/02/1998 đến ngày 1/05/1998 Thông tin được hiển thị tăng dần theo ngày sinh?

SELECT HoTen, ChucVu, NgaySinh FROM NHANVIEN

WHERE NgaySinh BETWEEN '20/FEB/1998' AND '1/MAY/1998' ORDER BY NgaySinh ASC;

Ngày đăng: 31/12/2020, 23:20

TỪ KHÓA LIÊN QUAN

w