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

Cách tự động gia tăng một varchar

  1. Ý tưởng trong thiết kế cơ sở dữ liệu là giữ cho từng phần tử dữ liệu riêng biệt. Và mỗi phần tử có kiểu dữ liệu, ràng buộc và quy tắc riêng. c0002 đó không phải là một lĩnh vực, mà là hai. Tương tự với XXXnnn hay bất cứ cái gì. Nó không chính xác và nó sẽ hạn chế nghiêm trọng khả năng sử dụng dữ liệu cũng như sử dụng các tính năng và tiện ích của cơ sở dữ liệu.

    Chia nó thành hai mục dữ liệu rời rạc:
    column_1 CHAR(1)
    column_2 INTEGER

    Sau đó đặt AUTOINCREMENT trên column_2

    Và có, Khóa chính của bạn có thể là (column_1, column_2) , vì vậy bạn không mất đi bất kỳ ý nghĩa nào c0002 dành cho bạn.

  2. Không bao giờ đặt nhà cung cấp và khách hàng (bất kể "c" và "s" có nghĩa là gì) trong cùng một bảng. Nếu bạn làm như vậy, bạn sẽ không có bảng cơ sở dữ liệu, bạn sẽ có một tệp phẳng. Và các vấn đề và hạn chế khác nhau dẫn đến điều đó.

    Điều đó có nghĩa là, Chuẩn hóa dữ liệu. Bạn sẽ kết thúc với:

    • một bảng cho Person hoặc Organisation chứa dữ liệu chung (Name, Address ...)
    • một bảng cho Customer chứa dữ liệu dành riêng cho khách hàng (CreditLimit ...)
    • một bảng cho Supplier chứa dữ liệu dành riêng cho nhà cung cấp (PaymentTerms ...)
    • không có cột tùy chọn hoặc không rõ ràng, do đó không có Nulls
    • không có giới hạn về sử dụng hoặc các hàm SQL
      .

    Và khi bạn cần thêm cột, bạn chỉ thực hiện ở nơi cần thiết mà không ảnh hưởng đến tất cả các điều kiện khác của tệp phẳng. Phạm vi ảnh hưởng được giới hạn trong phạm vi thay đổi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để xuất trường hình ảnh sang tệp?

  2. Làm cách nào để xuất tất cả dữ liệu từ bảng sang định dạng sql có thể chèn?

  3. Cách tạo Bảng bằng GUI trong SQL Server - Hướng dẫn SQL Server / T-SQL Phần 37

  4. Nhiều hàng cho một giá trị được phân tách bằng dấu phẩy trong Sql Server

  5. SQL Server 2017 Backup -2