Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách tốt nhất để cho phép người dùng thêm các cột vào cơ sở dữ liệu của họ một cách nhanh chóng là gì?

Việc họ thêm cột vào bảng có phải là một yêu cầu tuyệt đối không? hoặc chỉ là họ có thể chỉ định các trường bổ sung để lưu trữ? Tôi thực sự khuyên bạn nên xem xét một cái gì đó như Thực thể-Thuộc tính-Giá trị thay vì cho phép người dùng cuối (quản trị viên được coi là người dùng cuối) thực hiện các thay đổi giản đồ.

Đối với những thứ như thế này, bạn sẽ có một bảng để xác định các trường tùy chỉnh của mình, sau đó là một bảng liên kết nhiều đến nhiều để cho phép người dùng chỉ định giá trị cho trường tùy chỉnh cho liên hệ. Ví dụ:

    Contact
    ---------
 -> ContactId
|   FirstName
|   LastName
|   etc.
|
|                        ContactField
|                        --------------
|                        ContactFieldId <---
|                        FieldName          |
|                                           |
|   ContactFieldValue                       |
|   -------------------                     |
 -- ContactId                               |
    ContactFieldId -------------------------
    Value

Các chi tiết cụ thể của việc triển khai rõ ràng là tùy thuộc vào bạn (ví dụ:có sử dụng ContactId + ContactFieldId hay không làm khóa chính ghép trong ContactFieldValue ), nhưng điều này sẽ hiểu được ý tưởng chung.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thư viện gốc sqljdbc_auth.dll đã được tải trong một trình tải lớp khác

  2. Làm thế nào có thể so sánh giữa các lần trong vòng lặp while trong thủ tục được lưu trữ?

  3. Chức năng định dạng ngày của SQL Server

  4. C # / SQL:sao lưu và khôi phục bằng cách sao chép và thay thế các tệp cơ sở dữ liệu?

  5. lưu trữ các tệp trong sql server 2008 bằng cách sử dụng tùy chọn dòng lọc