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

vấn đề thiết kế cơ sở dữ liệu khi thêm cột mới vào bảng từ ứng dụng

Tạo bảng Composite, tức là ClientCharges

Bạn có thể giữ Bảng Phí gốc và bảng Khách hàng của mình và trong bảng Phí Khách hàng có các cột sau:

ClientChargeId, ClientId, ChargeId

Trong bảng Khoản phí của mình, bạn có thể tiếp tục thêm (bao nhiêu Khoản phí bạn yêu cầu) và sau đó tham chiếu ChargeId trong bảng Khoản phí Khách hàng.

CREATE TABLE ClientCharges
(
    ClientChargeId          INT IDENTITY(1,1)
    , ClientId              INT 
    , ChargeId              INT
)


INSERT INTO ClientCharges
(ClientId, ChargeId)
VALUES
(1, 1),
(1,2),
(1,3),
(1,4),
(2,1),
(3,1),
(3,2),
(4,3),
(4,4)
  • Khách hàng 1 có các Khoản phí 1, 2, 3 và 4
  • Khách hàng 2 có Khoản phí 1
  • Khách hàng 3 có các khoản phí 1 và 2
  • Khách hàng 4 có các khoản phí 3 và 4

Sau đó, thêm các ràng buộc khóa ngoại vào các trường ClientId và ChargeId.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. So sánh hai hàng và xác định các cột có giá trị khác nhau

  2. So sánh các cột trong đó một cột tương tự với một phần của cột khác

  3. Thuật toán T-SQL để mã hóa các ký tự HTML không an toàn dưới dạng tham chiếu thực thể ký tự HTML

  4. Các gói SSIS được lưu ở đâu?

  5. Sử dụng JDBC khi tên máy chủ chứa dấu gạch chéo ngược (localhost \ TESTDATA)