Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Hỏi] Nhiều phần mềm Access dùng chung CSDL ??
#1
Em có 3 máy tính hoạt động ở các vị trí khác nhau. 
Mục tiêu là mọi người đều có thể sử dụng phần mềm access trên máy tính của họ qua 1 CSDL chung.
Một số cách giải quyết em cũng tham khảo hướng dẫn của các anh paulsteigel, Noname nhưng thấy khá khó so với trình độ hiện tại. Vì vậy mong các bác tư vấn cho em vài điều sau:

1. Nếu không sử dụng access 2003 mà sử dụng access 2016 thì vấn đề trên có được giải quyết nhanh hơn không? Vì thằng access 2016 nó lưu trữ dữ liệu online được mà. Em có đọc trên trang chủ của microsoft thì thấy họ nói 1 số giải pháp như kết hợp với Share point, rồi PowerApp chẳng hạn. Ý tưởng cho điều này xuất phát từ suy nghĩ, em thấy bác Paulsteigel có giới thiệu dùng GoogleDriver làm CSDL và do em chưa quan trọng chuyện chi phí lắm nên nếu Microsoft có ok hơn, đơn giản hơn, nhanh hơn thì mất tiền cũng xứng đáng. Và thiết nghĩ thằng GoogleDriver làm CSDL cho access được chả nhẽ Microsoft không làm được cái OneDriver hay cái gì đó hỗ trợ cho access. Cùng 1 đơn vị nên em nghĩ họ sẽ hỗ trợ giải pháp tốt hơn. 

2. Giả sử điều trên là khá phức tạp với em ở hiện tại, em tính giải pháp làm file excel online hoặc thằng google sheet. Cả 2 thằng em đều đã dùng nhưng ở mức nhập môn, các bác cho em xin chút thông tin để lựa chọn tối ưu hơn ạ.


Em xin chân thành cảm ơn !
[url=http://thuthuataccess.com/forum/user-12431.html][/url]
Chữ ký của vkaccess vkaccess,gia nhập Thủ Thuật Access từ 24-04 -17.
Reply
Những người đã cảm ơn
#2
Bạn tham khảo thêm bài này:  Kết nối Data qua mạng LAN ( Vấn đề nhức nhối)

----------------------------------

Tôi cũng không thực sự kinh nghiệm lắm vụ phân phối ứng dụng Access đa người dùng qua Internet nhưng cũng có chút kiến thức cơ bản về nó nên chia sẽ trong giới hạn hiểu biết của mình. Các bạn khác góp ý, trao đổi thêm.
1. Trả lời vấn đề số 2 trước: Nếu bạn phân vân muốn quay về dùng Excel tức là bạn chưa hiểu rõ về sức mạnh của Access trong quản lý dữ liệu. Excel hay Google Spreadsheet không phải là giải pháp cho ứng dụng đa người dùng. Nếu muốn phát triển trên nền Excel, bạn cũng phải là cao thủ VBA mới làm được. Bạn hãy quên giải pháp này đi.
2. Vấn đề số 1:
- “Nếu không sử dụng access 2003 mà sử dụng access 2016 thì vấn đề trên có được giải quyết nhanh hơn không?” Bạn cũng chưa nắm rõ về Access rồi. Access vừa là hệ quản trị CSDL quan hệ vừa là ứng dụng khai thác CSDL đó. Access 2003 hay 2016 điều giống nhau chỉ có khác là Access 2016 có thêm tính năng mới (có từ Access 2010) là cho phép thiết kế Access Web App chạy trên nền web, bạn có thể chạy ứng dụng ở bất cứ máy nào miễn có trình duyệt web. Access 2003 chỉ thiết kế ứng dụng trên nền Desktop thôi, máy nào muốn xài phải cài đặt ứng dụng đó lên máy. 
- Như bạn nói muốn 3 máy sử dụng cùng 1 CSDL chung thì bạn cũng đã hiểu là để thiết kế ứng dụng cho nhiều người dùng thì phải tách cái ứng dung Access ra thành 2 file Font End (FE) - lưu Form, Report, Query, Module và file Back End (BE) - lưu toàn bộ Table. Nói chung ứng dụng Desktop hay Web đều cần có 1 máy chủ để lưu cái cục CSDL (file BE) cho nó rồi các máy con dùng ứng dụng FE để kết nối vô cục CSDL này. Máy chủ để lưu thì có thể cài các hệ quản trị CSDL như SQL, mySQL, Share Point. Các phầm mềm này cho phép xây dựng, thiết kế CSDL trong nó (các Table, query), đóng vài trò làm file BE và ứng dụng phía máy khách truy cập, thao tác, xử lý dữ liệu trên nền ứng dụng của nó luôn. Còn Google Drive, One Drive thuần túy chỉ là 1 nơi lưu trữ các file, folder trên mạng thôi, rồi chia sẽ cho các user khác kết nối, tải về, không có thao tác, xử lý ngay trên nó. 
- Bác Pausteigel có ngâm cứu có ý tưởng khai thác Google drive để phần mềm trực tiếp kết nối vô lấy dữ liệu nhưng không đơn giản và chưa được nhé.
- Nói về dùng Access Web App hay Access Desktop đều kết nối tới cục CSDL lưu trên máy chủ được . Một vấn đề bạn cần biết là Access không phải là phần mền chuyên về thiết kế Web App và chính Microsoft cũng đã thông báo không khuyến khích xài và không còn hỗ trợ cho nó nữa rồi thì mất thời gian học nó làm gì. Muốn thiết kế Web app thì học các ngôn ngữ khác mạnh hơn, hay hơn, chuyên nghiệp hơn cho nó như: PHP, Java…

-------------------------------------
Access web apps to be retired
[Hình: 25279067127_f0096f6df1_z.jpg]
-------------------------------------

Nói tóm lại để kết nối qua internet và nhiều người dùng đồng thời thì tốt nhất nên dùng Access + SQL Server. Access dùng thiết kế các Form, báo biểu v.v.. và SQL Server để lưu CSDL (table).
Còn nếu muốn dùng thuần túy MS Access không thôi và chỉ cần tổng hợp dữ liệu ở các nơi về máy chính cuối ngày thì cứ dùng Google Drive đồng bộ cái cục CSDL (BE) ở các máy con. Sau đó máy chính lên Google Drive tải các file BE của các máy con về Import vô file BE tổng.
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn tranthanhan1962 , maidinhdan , mytho , vkaccess
#3
Mình không rành lắm. Nhưng trước mình có đi tgia một Seminar của Dell. Tại đó có giới thiệu Microsoft 365.
Nếu bạn không quan tâm đến giá cả thì 365 có thể là giải pháp tốt vì sự linh động của nó chẳng hạn
Chữ ký của duynamvnn1208 duynamvnn1208,gia nhập Thủ Thuật Access từ 25-06 -17.
Reply
Những người đã cảm ơn maidinhdan , mytho
#4
Bổ sung thêm một số ý. Thực ra vấn đề kết nối qua mạng quan trọng là làm sao đừng xung đột dữ liệu. Excel chắc chắn không hỗ trợ trong việc nhiều người cùng mở 1 sheet, cùng xử lý một cell. Nhưng access có thể khóa record thông qua record locks. Nếu chắc chắn hơn thì có thể viết code để phát hiện CSDL đang được mở với nhiều tài khoản. Khi đó người sử dụng sau sẽ không xử lý dữ liệu mà chỉ xem, khi nào xác định chỉ có một tài khoản cùa mình làm việc mới xử lý dữ liệu thì sẽ không bao giờ có chuyện xung đột. Cũng có thể xử lý bằng cách mỗi tài khoản có riêng table của mình để nhập liệu, các dữ liệu riêng này sẽ được append, update 1 lần vào table chung vào thời điểm nào đó của admin quyết định (và admin xác định thời điểm để các tài khoản khác không mở CSDL, viết kiểu này hơi bị cực vì phải xác định đâu là record mới để append, đâu là record cũ để update và phải xử lý rất nhiều table riêng cho từng tai khoản)
Về Google drive, Onedrive hoặc bất kỳ ỗ đĩa đám mây nào thì cũng thế thôi, không khác vì mạng LAN vấn để của nó là đưa BE lên đám mây (vẫn xem nó là một ổ đĩa nằm trên thư mục đồng bộ) FE link table lên BE của thư mục đó. Do độ trể rất lớn nên giải pháp mỗi tài khoản là một table có vẽ tốt hơn. Nếu sử dụng phương pháp xử lý chung table với kiểu khi có nhiều hơn một máy thì không xử lý dữ liệu, cần phổ biến việc ai không sử dụng thì phải tắt ngay FE của mình. Chứ chơi kiểu mở phần mềm rồi đi nhậu thì khổ thân cho các tài khoản khác phải chờ dài cổ  004
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn maidinhdan , mytho , vkaccess
#5
(07-02-18, 09:39 PM)vkaccess Đã viết: Em có 3 máy tính hoạt động ở các vị trí khác nhau. 
Mục tiêu là mọi người đều có thể sử dụng phần mềm access trên máy tính của họ qua 1 CSDL chung.
Một số cách giải quyết em cũng tham khảo hướng dẫn của các anh paulsteigel, Noname nhưng thấy khá khó so với trình độ hiện tại. Vì vậy mong các bác tư vấn cho em vài điều sau:

1. Nếu không sử dụng access 2003 mà sử dụng access 2016 thì vấn đề trên có được giải quyết nhanh hơn không? Vì thằng access 2016 nó lưu trữ dữ liệu online được mà. Em có đọc trên trang chủ của microsoft thì thấy họ nói 1 số giải pháp như kết hợp với Share point, rồi PowerApp chẳng hạn. Ý tưởng cho điều này xuất phát từ suy nghĩ, em thấy bác Paulsteigel có giới thiệu dùng GoogleDriver làm CSDL và do em chưa quan trọng chuyện chi phí lắm nên nếu Microsoft có ok hơn, đơn giản hơn, nhanh hơn thì mất tiền cũng xứng đáng. Và thiết nghĩ thằng GoogleDriver làm CSDL cho access được chả nhẽ Microsoft không làm được cái OneDriver hay cái gì đó hỗ trợ cho access. Cùng 1 đơn vị nên em nghĩ họ sẽ hỗ trợ giải pháp tốt hơn. 

2. Giả sử điều trên là khá phức tạp với em ở hiện tại, em tính giải pháp làm file excel online hoặc thằng google sheet. Cả 2 thằng em đều đã dùng nhưng ở mức nhập môn, các bác cho em xin chút thông tin để lựa chọn tối ưu hơn ạ.


Em xin chân thành cảm ơn !
[url=http://thuthuataccess.com/forum/user-12431.html][/url]
-Mình đã dùng giải pháp Ms access+sql server và chạy trên internet cho nhiều người dùng và khá ổn định
-Hiện tại mình đang bắt đầu làm ASP.NET +Sql server để ứng dụng có thể chạy trên cả smart phone,IPAD
Chữ ký của hoanbhxhls Xin chào, mình là hoanbhxhls, Tham gia http://thuthuataccess.com/forum từ ngày 08-03 -13.
Reply
Những người đã cảm ơn maidinhdan , vkaccess
#6
Tôi nghĩ rằng dùng Access + SQL Server (hoặc bất kỳ nền tảng cung cấp dịch vụ quản lý dữ liệu qua mạng nào cũng được) là một giải pháp tốt, triệt để cho quản lý số liệu qua mạng bằng Access.
Việc cài ứng dụng SQL Server cũng đơn giản lắm các cụ ạ!
Chữ ký của paulsteigel ====================
Quốc gia hưng vong
Thất phu hữu trách
====================
Reply
Những người đã cảm ơn maidinhdan , Che_Guevara , vkaccess
#7
(09-02-18, 10:10 AM)hoanbhxhls Đã viết:
(07-02-18, 09:39 PM)vkaccess Đã viết: Em có 3 máy tính hoạt động ở các vị trí khác nhau. 
Mục tiêu là mọi người đều có thể sử dụng phần mềm access trên máy tính của họ qua 1 CSDL chung.
Một số cách giải quyết em cũng tham khảo hướng dẫn của các anh paulsteigel, Noname nhưng thấy khá khó so với trình độ hiện tại. Vì vậy mong các bác tư vấn cho em vài điều sau:

1. Nếu không sử dụng access 2003 mà sử dụng access 2016 thì vấn đề trên có được giải quyết nhanh hơn không? Vì thằng access 2016 nó lưu trữ dữ liệu online được mà. Em có đọc trên trang chủ của microsoft thì thấy họ nói 1 số giải pháp như kết hợp với Share point, rồi PowerApp chẳng hạn. Ý tưởng cho điều này xuất phát từ suy nghĩ, em thấy bác Paulsteigel có giới thiệu dùng GoogleDriver làm CSDL và do em chưa quan trọng chuyện chi phí lắm nên nếu Microsoft có ok hơn, đơn giản hơn, nhanh hơn thì mất tiền cũng xứng đáng. Và thiết nghĩ thằng GoogleDriver làm CSDL cho access được chả nhẽ Microsoft không làm được cái OneDriver hay cái gì đó hỗ trợ cho access. Cùng 1 đơn vị nên em nghĩ họ sẽ hỗ trợ giải pháp tốt hơn. 

2. Giả sử điều trên là khá phức tạp với em ở hiện tại, em tính giải pháp làm file excel online hoặc thằng google sheet. Cả 2 thằng em đều đã dùng nhưng ở mức nhập môn, các bác cho em xin chút thông tin để lựa chọn tối ưu hơn ạ.


Em xin chân thành cảm ơn !
[url=http://thuthuataccess.com/forum/user-12431.html][/url]
-Mình đã dùng giải pháp Ms access+sql server và chạy trên internet cho nhiều người dùng và khá ổn định
-Hiện tại mình đang bắt đầu làm ASP.NET +Sql server để ứng dụng có thể chạy trên cả smart phone,IPAD

Học cái này mất khoảng khoảng bao lâu cho người chưa biết gì ạ.
Chữ ký của vkaccess vkaccess,gia nhập Thủ Thuật Access từ 24-04 -17.
Reply
Những người đã cảm ơn
#8
(14-03-18, 09:28 AM)paulsteigel Đã viết: Tôi nghĩ rằng dùng Access + SQL Server (hoặc bất kỳ nền tảng cung cấp dịch vụ quản lý dữ liệu qua mạng nào cũng được) là một giải pháp tốt, triệt để cho quản lý số liệu qua mạng bằng Access.
Việc cài ứng dụng SQL Server cũng đơn giản lắm các cụ ạ!

Em sử dụng thằng Backup and Sync do anh @tranthanhan1962 hướng dẫn. Sử dụng 1 tài khoản mà đăng nhập trên cả 3 máy. Hoạt động khá ổn khi em test, nhiều dữ liệu thì em chưa thử. Tuy nhiên theo cảm nhận của em thì không vấn đề. Do vấn đề bảo mật nên em tách ra dùng 3 tài khoản google riêng. Và share từ tài khoản chính sang 2 tài khoản kia thì thấy có vẻ nó hoạt động không ổn lắm. Lúc đó em đo tốc độ download upload trên speedtest.net thì khoảng 15Mbps. Không biết còn do yếu tố nào nữa không.
Nhân tiện bác cho em hỏi vọc thằng SQL sever có mất thời gian không ạ. Em không ngại khó vì  cũng vọc access từ con số 0. Giờ chỉ là yếu tố thời gian thôi.
Chữ ký của vkaccess vkaccess,gia nhập Thủ Thuật Access từ 24-04 -17.
Reply
Những người đã cảm ơn
#9
(09-02-18, 12:11 AM)tranthanhan1962 Đã viết: Bổ sung thêm một số ý. Thực ra vấn đề kết nối qua mạng quan trọng là làm sao đừng xung đột dữ liệu. Excel chắc chắn không hỗ trợ trong việc nhiều người cùng mở 1 sheet, cùng xử lý một cell. Nhưng access có thể khóa record thông qua record locks. Nếu chắc chắn hơn thì có thể viết code để phát hiện CSDL đang được mở với nhiều tài khoản. Khi đó người sử dụng sau sẽ không xử lý dữ liệu mà chỉ xem, khi nào xác định chỉ có một tài khoản cùa mình làm việc mới xử lý dữ liệu thì sẽ không bao giờ có chuyện xung đột. Cũng có thể xử lý bằng cách mỗi tài khoản có riêng table của mình để nhập liệu, các dữ liệu riêng này sẽ được append, update 1 lần vào table chung vào thời điểm nào đó của admin quyết định (và admin xác định thời điểm để các tài khoản khác không mở CSDL, viết kiểu này hơi bị cực vì phải xác định đâu là record mới để append, đâu là record cũ để update và phải xử lý rất nhiều table riêng cho từng tai khoản)
Về Google drive, Onedrive hoặc bất kỳ ỗ đĩa đám mây nào thì cũng thế thôi, không khác vì mạng LAN vấn để của nó là đưa BE lên đám mây (vẫn xem nó là một ổ đĩa nằm trên thư mục đồng bộ) FE link table lên BE của thư mục đó. Do độ trể rất lớn nên giải pháp mỗi tài khoản là một table có vẽ tốt hơn. Nếu sử dụng phương pháp xử lý chung table với kiểu khi có nhiều hơn một máy thì không xử lý dữ liệu, cần phổ biến việc ai không sử dụng thì phải tắt ngay FE của mình. Chứ chơi kiểu mở phần mềm rồi đi nhậu thì khổ thân cho các tài khoản khác phải chờ dài cổ  004

em tạo thêm 2 thằng google nữa thì không ổn lắm bác ạ sad
Chữ ký của vkaccess vkaccess,gia nhập Thủ Thuật Access từ 24-04 -17.
Reply
Những người đã cảm ơn
#10
(08-02-18, 08:57 PM)ongke0711 Đã viết: Bạn tham khảo thêm bài này:  Kết nối Data qua mạng LAN ( Vấn đề nhức nhối)

----------------------------------

Tôi cũng không thực sự kinh nghiệm lắm vụ phân phối ứng dụng Access đa người dùng qua Internet nhưng cũng có chút kiến thức cơ bản về nó nên chia sẽ trong giới hạn hiểu biết của mình. Các bạn khác góp ý, trao đổi thêm.
1. Trả lời vấn đề số 2 trước: Nếu bạn phân vân muốn quay về dùng Excel tức là bạn chưa hiểu rõ về sức mạnh của Access trong quản lý dữ liệu. Excel hay Google Spreadsheet không phải là giải pháp cho ứng dụng đa người dùng. Nếu muốn phát triển trên nền Excel, bạn cũng phải là cao thủ VBA mới làm được. Bạn hãy quên giải pháp này đi.
2. Vấn đề số 1:
- “Nếu không sử dụng access 2003 mà sử dụng access 2016 thì vấn đề trên có được giải quyết nhanh hơn không?” Bạn cũng chưa nắm rõ về Access rồi. Access vừa là hệ quản trị CSDL quan hệ vừa là ứng dụng khai thác CSDL đó. Access 2003 hay 2016 điều giống nhau chỉ có khác là Access 2016 có thêm tính năng mới (có từ Access 2010) là cho phép thiết kế Access Web App chạy trên nền web, bạn có thể chạy ứng dụng ở bất cứ máy nào miễn có trình duyệt web. Access 2003 chỉ thiết kế ứng dụng trên nền Desktop thôi, máy nào muốn xài phải cài đặt ứng dụng đó lên máy. 
- Như bạn nói muốn 3 máy sử dụng cùng 1 CSDL chung thì bạn cũng đã hiểu là để thiết kế ứng dụng cho nhiều người dùng thì phải tách cái ứng dung Access ra thành 2 file Font End (FE) - lưu Form, Report, Query, Module và file Back End (BE) - lưu toàn bộ Table. Nói chung ứng dụng Desktop hay Web đều cần có 1 máy chủ để lưu cái cục CSDL (file BE) cho nó rồi các máy con dùng ứng dụng FE để kết nối vô cục CSDL này. Máy chủ để lưu thì có thể cài các hệ quản trị CSDL như SQL, mySQL, Share Point. Các phầm mềm này cho phép xây dựng, thiết kế CSDL trong nó (các Table, query), đóng vài trò làm file BE và ứng dụng phía máy khách truy cập, thao tác, xử lý dữ liệu trên nền ứng dụng của nó luôn. Còn Google Drive, One Drive thuần túy chỉ là 1 nơi lưu trữ các file, folder trên mạng thôi, rồi chia sẽ cho các user khác kết nối, tải về, không có thao tác, xử lý ngay trên nó. 
- Bác Pausteigel có ngâm cứu có ý tưởng khai thác Google drive để phần mềm trực tiếp kết nối vô lấy dữ liệu nhưng không đơn giản và chưa được nhé.
- Nói về dùng Access Web App hay Access Desktop đều kết nối tới cục CSDL lưu trên máy chủ được . Một vấn đề bạn cần biết là Access không phải là phần mền chuyên về thiết kế Web App và chính Microsoft cũng đã thông báo không khuyến khích xài và không còn hỗ trợ cho nó nữa rồi thì mất thời gian học nó làm gì. Muốn thiết kế Web app thì học các ngôn ngữ khác mạnh hơn, hay hơn, chuyên nghiệp hơn cho nó như: PHP, Java…

-------------------------------------
Access web apps to be retired
[Hình: 25279067127_f0096f6df1_z.jpg]
-------------------------------------

Nói tóm lại để kết nối qua internet và nhiều người dùng đồng thời thì tốt nhất nên dùng Access + SQL Server. Access dùng thiết kế các Form, báo biểu v.v.. và SQL Server để lưu CSDL (table).
Còn nếu muốn dùng thuần túy MS Access không thôi và chỉ cần tổng hợp dữ liệu ở các nơi về máy chính cuối ngày thì cứ dùng Google Drive đồng bộ cái cục CSDL (BE) ở các máy con. Sau đó máy chính lên Google Drive tải các file BE của các máy con về Import vô file BE tổng.

Em đang xài thằng Backup and sync của google do anh tranthanhan1962 chỉ điểm. Làm cái đó thì không phải tải mà nó tự đồng bộ.
Chữ ký của vkaccess vkaccess,gia nhập Thủ Thuật Access từ 24-04 -17.
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Demo Access định dạng adp kết nối với SQL Server dangh5 5 267 08-08-18, 01:35 AM
Bài mới nhất: dangh5
  Export Table từ access sang 1 file word có sẵn! cong_agribankPT 55 26,268 02-08-18, 08:26 AM
Bài mới nhất: vuthaiha90
  [Hỏi] Import nhiều file Excel vào Table Access vuthaiha90 31 1,554 28-07-18, 03:12 AM
Bài mới nhất: vuthaiha90
  Demo Import/Export Excel + Hàm Liệt tên ALL Access maidinhdan 68 8,933 28-06-18, 10:32 PM
Bài mới nhất: maidinhdan
  Chèn âm thanh vào file Access tt1212 8 2,092 21-05-18, 04:10 PM
Bài mới nhất: le thai hoa

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ| PMA Nha Trang| Gỗ Acrylic Không Đường Line