เพื่อเป็นการยืนยันว่า ถ้า lookup ไม่เจอ มันจะใส่ค่า NULL มาให้ใน output แน่ๆ ทำให้เรา check ได้ง่ายว่า record ไหนบ้างมี lookup ไม่เจอ
ถ้าเราดื้อจะ set reference like non-key columns to be NOT NULLABLE สิ่งที่เกิดขึ้นคือ มันจะใส่ค่า default value มาให้กรณีที่ lookup ไม่เจอ
ทำให้เวลาจะไปเขียนดักว่า record ไหนบ้างที่ lookup ไม่เจอใน step ถัดไปก็ยุ่งยากขึ้นไปอีก
ไอ้ default value เนี่ย มันคืออะไรหล่ะ
- ถ้าเป็น Integer, default value = 0 เห็นมั้ยว่า เราจะแยก 0 จริงๆ กับ 0 ที่เป็น default value ไม่ออกละ
- ถ้าเป็น varchar, default value คือ empty string ซึ่งไม่ใช่ null นะ ใช้ฟังก์ชั่น isnull() มันก็จะบอกว่า ไม่ใช่ null หึหึ
- ถ้าเป็น char, default value คือ $APT_STRING_PADCHAR
No comments:
Post a Comment