(24-08-15, 10:22 PM)honglv157 Đã viết: cho em hỏi 1 vấn đề rất cũ rồi;nhưng e đọc mãi mà vẫn chưa hiểu được:
e có 1 cơ sở dữ liệu gồm (table;form;query). và dự định tạo form login in trong đó có phân cấp và phân quyền sử dụng các form. e share lên mạng lan để các cán bộ trong cq cùng truy cập.nhưng theo như e được biết thì 1 file acess chỉ chứa được 2g là tối đa.e xin có 2 câu hỏi:
1) có cách nào để có thể dùng trong mạng lan nội bộ mà ko bị xung đột dữ liệu khi nhiều người cùng truy cập.dự kiến sẽ cài ở 20 máy con
2)có cách nào để database có thể lưu trữ được nhiều hơn ko a.
mong mọi người giúp e giải đáp? thanks
-------------------------------
-Với 20 máy con truy cập bạn dùng ms access làm database nói chung là không ổn
*Giải pháp của mình là như này
-Bạn phải dùng csdl là sql server cao hơn có thể là oracle
-Bạn phải lập trình unbound (không buộc các control vào database) để tránh được đụng độ người dùng và tiết kiệm tài nguyên máy
-Cao hơn nữa data sql server bạn có thể để ở nhiều máy ,sql server có cơ chế tự đồng bộ dữ liệu giữa các máy(giải pháp csdl phân tán)-điều này bạn làm với data mdb bắt buộc bạn phải viết code mà không hiêu quả
-Nếu dữ liệu quá lớn bạn nên tận dụng cơ chế phân đoạn bảng của sql server (partion talbe) để tăng tốc độ tạo báo cáo
------------------------------
-Bỏ hẳn mô hình lập trình client-server chuyển sang mô hình lập trình 3 lớp (hệ thống ngân hàng đang dùng)
-Khi bài toán cần giải quyết có qui mô phức tạp thì bắt buộc phải chuyển nền tảng công nghệ
-Nếu phức tạp quá thì theo mình là tư vấn cho xếp mua phần mềm của các công ty uy tín
-Một mình bạn làm mình sợ sẽ mất thời gian mà có khi không thấy kết quả
Trên đây là ý kiến của mình-mong các bạn góp ý thêm