Cám ơn các anh nhiều, nhưng vẫn làm chưa được có cách nào khác không ? Em để data nơi khác là muốn để làm việc trực tiếp với server đó mà. Muốn là vậy nhưng không biết Access có làm được ( chương trình Access + data SQL server) không nữa. Mong được hướng dẫn.
Bạn tách riêng dữ liệu và Form, Modules, Reports,... như thế là RẤT ĐÚNG. (và làm được từ hồi Access còn là bản 2.0 và MS SQL là 6.0 - tức là từ hồi 1996 đã có thể làm được như thế rồi. Bạn yên tâm làm nhé)
Từ file mdb chương trình, bạn tạo các attached tables link tới các bảng dữ liệu được thiết kế ở MS SQL Server hoặc ở 1 file MDB Data khác.
Trong chương trình, bạn chỉ cần quản lý cái "link" giữa file mdb chương trình và "data source" thôi.
Những ai làm Data và Form,... cùng 1 file thì sẽ không chạy được trên mạng, lúc nâng cấp chương trình cũng khó, v.v...
Còn chuyện tạo form Master/Child table thì nó là kinh điển trong các ví dụ của Access rồi. Bạn cứ tìm ví dụ mà làm theo (Miễn là việc thiết kế Database phải chuẩn, quan hệ rõ ràng, thể hiện đúng nghiệp vụ).
Chú ý: Bác
ptm0412 link gì mà qua nhiều trường thế.
___________________
tb_Transaction '// Master Table
___________________
ID (PK)
-------------------
TransNo
TransDate
.......
___________________
tb_TransactionDetail '// Detail Table
___________________
ID (PK) '// LineNo
TransID (FK)
---------------------------
ProductID (FK)
Qty
....
Như vậy, khi làm form thì chỉ cần link ID của Master table với TransID trong Detail table thôi. Quan hệ giữa Master table & Detail table là quan hệ
Identify relationship (quan hệ xác định - hay nôm na gọi là quan hệ cha con). Hầu hết khi xác lập quan hệ xác định thì tức là sẽ có ràng buộc cascade delete và cascade update.
Còn quan hệ giữa các bảng danh mục với bảng chính (ví dụ như danh mục hàng hoá với bảng detail) thì gọi là
Non-Identify relationship (quan hệ không xác định - hay còn gọi là quan hệ tham chiếu).
Thông thường, quan hệ không xác định thì đặt ràng buộc để khi xoá/update source thì sẽ
RESTRICT.
Việc hiểu cách thiết lập quan hệ sao cho đúng sẽ tạo ra ứng dụng có tốc độ và an toàn về dữ liệu.
Hope that helps!