Tôi có một câu hỏi thực tế về các trường bảng đặt tên trong cơ sở dữ liệu. Ví dụ: tôi có hai bảng:Quy ước đặt tên trường bảng và câu lệnh SQL
student (id int; name varchar(30))
teacher (id int, s_id int; name varchar(30))
Có cả 'id' và "tên" trong hai bảng. Trong câu lệnh SQL, nó sẽ không rõ ràng cho cả hai nếu không có tên bảng nào được đặt trước. Hai lựa chọn:
- sử dụng tên bảng là tiền tố của một trường trong SQL 'nơi' khoản
- sử dụng tiền tố tên trường trong bảng để không tiền tố sẽ được sử dụng trong 'nơi' khoản.
Cái nào tốt hơn?
Có, luôn đủ điều kiện ** tất cả ** tham chiếu cột trong truy vấn. Nó ngăn chặn truy vấn phá vỡ trong tương lai khi ai đó thêm một cột trong một bảng (giới thiệu các lỗi tham chiếu cột mơ hồ). Và, nó làm cho nó dễ dàng hơn cho người đọc sau để giải mã SQL ... mà tham chiếu không đủ tiêu chuẩn của cột 'foobar' ... là tham chiếu đến một cột trong bảng' phí', bảng 'fi' hoặc' fo' bảng? (Bạn không dám làm cho tôi đi săn qua các định nghĩa bảng để tìm hiểu bảng nào đề cập đến.) Nhưng sở thích cá nhân của tôi là đặt tên cho cột là 'id', đó là khóa chính (hoặc duy nhất). – spencer7593