Tải bản đầy đủ (.ppt) (19 trang)

báo cáo tiểu luận môn học lập trình mạng gắn bó dữ liệu trong csdl phân tán viết chương trình minh họa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (247.25 KB, 19 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC ĐÀ NẴNG

BÁO CÁO TIỂU LUẬN
MƠN HỌC: LẬP TRÌNH MẠNG
Giáo viên hướng dẫn: PGS. TS Lê Văn Sơn
Học viên thực hiện: TRẦN TẤN NHA
Lớp: KHOA HỌC MÁY TÍNH K24

1


NỘI DUNG BÁO CÁO
1. Giới thiệu Đề tài
2. Giải quyết vấn đề
3. Kết luận
4. Chạy chương trình

2


1. ĐỀ TÀI


Gắn bó dữ liệu trong các CSDL phân tán.



Viết chương trình cho phép cập nhật CSDL và
kiểm tra tính gắn bó.


3


2. GIẢI QUYẾT VẤN ĐỀ


Ngơn ngữ lập trình được sử dụng.



Xây dựng cơ sở dữ liệu.



Xây dựng các chương trình Client, Server, Monitor.



Kiểm tra tính gắn bó.

4


2. GIẢI QUYẾT VẤN ĐỀ


Ngơn ngữ lập trình được sử dụng.




Xây dựng cơ sở dữ liệu.



Xây dựng các chương trình Client, Server, Monitor.



Kiểm tra tính gắn bó.

5


NGƠN NGỮ LẬP TRÌNH


Sử dụng ngơn ngữ Java để xây dựng chương trình.



Java là một ngơn ngữ đơn giản, hướng đối tượng,
phân tán, thông dịch mạnh mẽ, bảo mật, cấu trúc
độc lập, khả chuyển, hiệu quả cao và linh động.

6


XÂY DỰNG CƠ SỞ DỮ LIỆU



Cơ sở dữ liệu được thiết kế khơng nhằm mục đích
quản lý mà chỉ phục vụ cho yêu cầu về cập nhật, tra
cứu thông tin.



Do đó có thể thiết kế rất đơn giản:


Thiết kế cơ sở dữ liệu Books sử dụng hệ quản trị cơ
sở dữ liệu Access.



Cơ sở dữ liệu Books sẽ bao gồm table Books.



Table Books gồm một trường Maso để lưu các mã
số về các cuốn sách.
7


KẾT NỐI CƠ SỞ DỮ LIỆU


Sử dụng đăng kết ODBC




Kết nối cơ sở dữ liệu bằng Java


Nạp trình điều khiển

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver" );


Tạo kết nối

Connection
knoi=DriverManager.getConnection( "jdbc:odbc:DSNThu
Vien");


Tạo đối tượng Statement

Statement lenhSQL = knoi.createStatement();
8


MƠ HÌNH CLIENT/SERVER

9


XÂY DỰNG SERVER (1/2)
Sơ đồ khối cho chương trình chính của Server như sau:
Bắt đầu
Tạo giao diện

Đợi kết nối từ các Client

Sai

Nhận kết nối
Đúng

Tạo một Thread mới kết nối với Client
(MultipleSocketServer)
Kết thúc

10


XÂY DỰNG SERVER (2/2)
Sơ đồ khối cho MultipleSocketServer:
Bắt đầu
Tạo kết nối với CSDL
Nhận thông tin từ Client
Thực thi việc Nhập, sửa, xố, xuất
thơng tin theo thơng tin nhận được
Gửi kết quả về cho Client
Kết thúc
11


XÂY DỰNG CLIENT
Bắt đầu
Tạo giao diện
Kết nối đến Server

Thực hiện yêu cầu thêm, sửa, xoá, xuất trên giao diện

Chuyển yêu cầu đến Server

Nhận kết quả từ Server, xuất kết quả ra màn hình

Kết thúc

12


XÂY DỰNG MONITORING
Bắt đầu
Tạo giao diện
Kết nối đến Server
Thực hiện yêu cầu kiểm tra kết nối, kiểm tra thao tác, thoát
Chuyển yêu cầu đến Server
Nhận kết quả từ Server, xuất kết quả ra màn hình

Kết thúc

13


KIỂM TRA TÍNH GẮN BĨ DỮ LIỆU
(1/3)
Cho một hệ thống cho phép cập nhật thông tin hay
tra cứu thông tin cần thiết.



Thông thường một ứng dụng nhiều người dùng làm
việc với CSDL, ta sẽ gặp phải trường hợp hai người
cùng truy xuất và cập nhật trên cùng một dữ liệu. Ta
gọi đó là trạng thái xung đột. Và khi đó số liệu dễ bị
sai lạc và làm mất tính tồn vẹn, gắn bó của dữ liệu.

14


KIỂM TRA TÍNH GẮN BĨ DỮ LIỆU
(2/3)


Do đó, mỗi khi cập nhật thông tin hay tra cứu thông
tin, phải kiểm tra để xác định quyền truy cập để đọc
hay sửa đổi nội dung các bảng cơ sở dữ liệu . Chỉ cho
phép cập nhật khi khơng có truy vấn nào đang tiến
hành.



Các hệ CSDL có hỗ trợ transaction sẽ sử dụng cơ
chế lock, khoá các khối dữ liệu đang ở trong một
transaction, ngăn không cho các truy cập từ những
người dùng khác.
15


KIỂM TRA TÍNH GẮN BĨ DỮ LIỆU
(3/3)

Tạo Connection
Chấm dứt auto-commit
Các lệnh SQL Update, Insert,
Delete...

Transaction

commit
Các lệnh SQL Update, Insert,
Delete...

Transaction

commit
16


3. KẾT LUẬN


Trong tiểu luận này đã giải quyết các vấn đề cơ bản đặt ra
ban đầu như:









Thực hiện kết nối Client/Server, trong đó một Server có thể nhận kết nối từ
nhiều Client cùng lúc.
Mỗi Client có thể kết nối vào cơ sở dữ liệu tại Server và thực hiện các hoạt
động thêm, sửa, xố, xuất, thốt. Q trình này có kiểm tra tính gắn bó về
dữ liệu.
Xây dựng Monitoring dùng để kiểm tra quá trình cập nhật dữ liệu
Chương trình được xây dựng bằng ngơn ngữ Java.

Hạn chế:






Chỉ mới bước đầu sử dụng ngơn ngữ lập trình Java nên chưa được thành
thạo, và Chương trình được viết chỉ mới mang tính chất thử nghiệm chứ
chưa phải là một chương trình hồn chỉnh.
Chưa thử nghiệm được khi số lượng Client kết nối lớn, cũng như khi dữ
liệu yêu cầu lớn.
Chưa nghiên cứu để sử dụng các Hệ quản trị CSDL khác: MSSQL,
MySQL, Oracle ...
Và các hạn chế khác nữa ...
17


4. CHẠY CHƯƠNG TRÌNH

18



19



×