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

Thiết lập chính nước ngoài với kiểu dữ liệu khác nhau

Trên thực tế nó không có ý nghĩa ở đây là lý do tại sao:

Trong một bảng, bạn có thể thiết lập trên thực tế bất kỳ cột như khóa chính của nó. Vì vậy, nó có thể là số nguyên, đôi, chuỗi, vv Mặc dù ngày nay, chúng tôi chủ yếu sử dụng một trong hai số nguyên hay, gần đây hơn, chuỗi như khóa chính trong một bảng.

Kể từ khi chính nước ngoài được trỏ đến khóa chính của bảng khác, đây là lý do tại sao bạn cần phải xác định datatype phím nước ngoài. Và nó rõ ràng là cần phải được các kiểu dữ liệu giống nhau.

EDIT:

triển khai SQL là lỏng lẻo về trường hợp này như chúng ta có thể thấy:họ cho phép các loại tương thích (INT và BIG INT, phao hoặc thập phân và DOUBLE) nhưng có nguy cơ của riêng bạn . Cũng như chúng ta có thể thấy trong ví dụ của bạn, dưới đây.

Tuy nhiên, định mức SQL làm rõ rằng cả hai kiểu dữ liệu phải là datatype same.If là nhân vật, họ phải có cùng độ dài, nếu không, nếu nó là số nguyên, họ phải có cùng kích thước và phải cả được ký kết hoặc cả hai unsigned .

Bạn có thể thấy một mình ở đây, một chương từ một cuốn sách MySQL xuất bản vào năm 2003.

Hy vọng điều này trả lời câu hỏi của bạn.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL 13:Đừng để các vị trí giết chết vị trí chính của bạn

  2. Làm thế nào để so sánh dữ liệu giữa hai cơ sở dữ liệu trong PostgreSQL?

  3. Chỉ trả về các giá trị số từ một cột cơ sở dữ liệu PostgreSQL

  4. Chọn các hàng được sắp xếp theo một số cột và phân biệt trên một cột khác

  5. ClassNotFoundException với PostgreSQL và JDBC