(13) Sắp xếp một cơ sở dữ liệu nhờ tệp chỉ số – Bùi Thế Tâm



Sap xep mot CSDL nho tep chi so – Thuật toán – Kênh Bùi Thế Tâm – Bui The Tam, Hanoi, Vietnam
Trong thực tiễn quản lý ta thường gặp những cơ sở dữ liệu rất lớn, có tới vài vạn bản ghi, ví dụ cơ sở dữ liệu về toàn bộ sinh viên của một trường đại học. Khi đó ta không thể lôi toàn bộ các bản ghi vào bộ nhớ trong để sắp xếp mà nên dùng một tệp chỉ số. Giả sử cơ sở dữ liệu Bank.dat của ngân hàng gồm các bản ghi có nội dung:
Bản ghi Số tài khoản Họ và tên chủ tài khoản Số dư (đồng)
0 MD1234 Bùi Văn Tuyến 150 000 000
1 AD0087 Nguyễn Văn Thanh 450 000 000
2 XY1942 Lê Minh Tước 175 000 000
3 LT2266 Phan Quốc Thắng 200 000 000
Ta muốn sắp xếp các bản ghi theo Số tài khoản tăng dần, trường Số tài khoản gọi là khoá sắp xếp. Từ tệp cơ sở dữ liệu ta sẽ xây dựng tệp chỉ số ChiSo.idx có hai trường: trường Số tài khoản (ứng với khoá sắp xếp), trường Bản ghi (thứ tự bản ghi ứng với giá trị của khoá). Tệp chỉ số đã được sắp xếp theo giá trị khoá tăng dần. Với cơ sở dữ liệu Bank.dat tệp chỉ số ChiSo.idx có dạng:
Số tài khoản Bản ghi
AD0087 1
LT2266 3
MD1234 0
XY1942 2
So với tệp CSDL (có thể tới hàng trăm trường) tệp chỉ số có kích thước rất nhỏ (chỉ gồm 2 trường), do đó có thể đưa vào bộ nhớ trong để xử lý. Sau đây là hai công việc thường làm với tệp chỉ số.
1. Xem các bản ghi của CSDL đã được sắp xếp nhờ tệp chỉ số. Thuật toán: chuyển giá trị của toàn bộ trường Bản ghi của tệp chỉ số vào một mảng int c(50) nằm ở bộ nhớ trong, in lần lượt các bản ghi của tệp CSDL theo thứ tự của mảng c.
2. Tìm kiếm nhanh nhờ tệp chỉ số. Thuật toán: vào một số tài khoản chẳng hạn tk = “MD1234”, chuyển các bản ghi của tệp chiso.idx vào mảng c nằm ở bộ nhớ trong, dùng phương pháp tìm kiếm nhị phân để tìm một phần tử k của mảng c có trường Số tài khoản bằng với tk, trường Bản ghi của phần tử k chính là bản ghi cần tìm trong tệp CSDL.
HỌC TIN HỌC ONLINE MIỄN PHÍ.
Bùi Thế Tâm là kênh đào tạo về lĩnh vực Công nghệ thông tin, Lập trình ngôn ngữ C, Cấu trúc dữ liệu và giải thuật, Tin học văn phòng, Các thuật toán toán tối ưu, Hướng dẫn sử dụng Microsoft office 2007, 2010, 2013, Hướng dẫn dùng Google Drive, Algorithms.
Kênh Bùi Thế Tâm hướng dẫn sử dụng word, excel, powerpoint, lập trình ngôn ngữ C cho người mới bắt đầu, sinh viên, sinh viên năm thứ nhất, sinh viên năm thứ hai, cho học sinh, giáo viên vùng sâu vùng xa, người cao tuổi muốn học tin học ở nhà, các bạn thi viên chức và người đi làm.
Với nhiều năm kinh nghiệm giảng dậy và viết sách nên các bài giảng ở đây rất dễ hiểu, đơn giản, chuẩn xác và đầy đủ. Trong bài giảng phần lý thuyết, bài tập xen kẽ nhau, với nhiều dạng bài tập từ dễ đến khó có hướng dẫn giải chi tiết cẩn thận giúp các bạn có thể nắm vững được kiến thức. Các thuật toán đều cho listing chương trình. Các chương trình đều có giải thích từng lệnh cụ thể trong bài giảng.
Bùi Thế Tâm là tác giả một số sách phổ biến về Tin học: “1. Ngôn ngữ C và lập trình hướng đối tượng – 2. Turbo Pascal 7.0 – 3. Giáo trình Tin học văn phòng – 4. Giáo trình Tin học đại cương – 5. Giáo trình Microsoft Access – 6. Cẩm nang lập trình FoxPro – 7. Cẩm nang sử dụng máy vi tính – 8. Các phương pháp tối ưu hóa.”
Kênh Yotube chính thức của Bùi Thế Tâm, Subscribe Youtube:
Facebook:
Twitter:
Blog:
Hãy like và chia sẻ cho bạn bè và những người bạn quen đang muốn học về Microsoft Office, Tin học văn phòng (hay còn gọi là tin học cơ sở, tin học đại cương, tin học căn bản, tin học phổ thông, tin học cho người mới bắt đầu), Ngôn ngữ lập trình C, Cấu trúc dữ liệu, Thuật toán, Tin học văn phòng online.
Mọi hình thức copy và sao chép đều vi phạm bản quyền của youtube nếu không được sự đồng ý của tác giả Bùi Thế Tâm
Đừng quên đăng ký kênh để học thêm các bài mới

Nguồn: https://millionwordsite.com/

Xem thêm bài viết khác: https://millionwordsite.com/cong-nghe/

Leave a Reply

Your email address will not be published. Required fields are marked *