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.