Postgresã¨MySQLã§ã®è¤åã¦ãã¼ã¯å¶ç´ã§ã®NULLã®æ±ã
ã¦ãã¼ã¯å¶ç´ã§ã¯NULLã¯åãå¤ã¨ã¿ãªãããªãã®ã§ãè¤åã¦ãã¼ã¯å¶ç´ã§ã1åã§ãNULLã«ãªãã«ã©ã ãããã°ãæ¸ãè¾¼ãã¦ãã¾ãã¾ããMySQLã§ã¯ç¥ã£ã¦ããã§ãããããããã°Postgresã ã¨ã©ããªãã ããã¨æã£ã¦ã調ã¹ã¦ã¿ã¾ããã
çµè«
çµè«ã¨ãã¦ã¯ãæ¨æºåãããSQLè¦æ ¼ã§ãã決ã¾ã£ã¦ããããã®ã§ãMySQLã§ãPostgresã§ãåæ§ã«ãè¤åã¦ãã¼ã¯å¶ç´ã§NULLãå«ãã¨æ¸ãè¾¼ãã¾ããæ¨æºSQLè¦æ ¼ãç´æ¥ç¢ºèªãã¦ãªããã§ããã©ããæ¨æºSQLè¦æ ¼ã£ã¦ãããã«å ¬éããã¦ããããªãã®ããªãæ¢ãããã©è¦ã¤ãããªãã£ãã
ä¸è¬ã«ãå¶ç´ã®å¯¾è±¡ã¨ãªãåã«ã¤ãã¦åãå¤ãæã¤è¡ãããã¼ãã«å ã«ï¼è¡ãä¸åãå ´åã¯ãä¸ææ§å¶ç´éåã«ãªãã¾ãã ãããããã®æ¯è¼ã§ã¯2ã¤ã®NULLå¤ã¯ç価ã¨ã¯ã¿ãªããã¾ããã ã¤ã¾ããä¸ææ§å¶ç´ããã£ãã¨ãã¦ããå¶ç´å¯¾è±¡ã®åã®å°ãªãã¨ã1ã¤ã«NULLå¤ãæã¤è¡ãè¤æ°æ ¼ç´ãããã¨ãã§ããã¨ãããã¨ã§ãã ãã®æ¯èãã¯æ¨æºSQLã«æºæ ãã¦ãã¾ããããã®è¦åã«å¾ããªãSQLãã¼ã¿ãã¼ã¹ããããã¨ãèãããã¨ãããã¾ãã ã§ãããã移æ¤ããäºå®ã®ã¢ããªã±ã¼ã·ã§ã³ãéçºããéã«ã¯æ³¨æãã¦ãã ããã
http://www.postgresql.jp/document/pg904doc/html/ddl-constraints.html#AEN2445
MySQLã«ã¤ãã¦ã¯ãè¤å ã¦ãã¼ã¯ NULLãã¨ãã§æ¤ç´¢ããã¨çµæ§ã¨ã³ããªã¼ãè¦å½ãããã©ãPostgresã¯ãªããªãåºã¦ãã¾ããã§ããããã®ä»£ãããå ¬å¼ã®ããã¥ã¡ã³ãã«æ¸ãã¦ããã®ãè¦ã¤ãã¾ãããéã«MySQLã®ããã¥ã¡ã³ãã§ã¯è¦å½ãããªãã£ãã»ã»ã»
å¤ãNULLã®ãã£ã¼ã«ãã¯UNIQUEå¶ç´ã®å¯¾è±¡ã«ãªããªããè¤æ°ã¬ã³ã¼ãã«NULLããã£ã¦ãå¶ç´éåã«ã¯ãªããªãã
データベース PostgreSQL 制約 - s-kita’s blog
1ã¶æã ããPostgresã§ã®è¤åã¦ãã¼ã¯å¶ç´ã§ã®NULLã«ã¤ãã¦ã触ãã¦ãã¨ã³ããªã¼ãè¦ã¤ãã¾ããã
è«çåé¤
ãã®ä»æ§ãè«çåé¤ã¨ç¸æ§ãè¯ããªãã§ãããdeleted_at
ã¨ããã«ã©ã ã«ãåé¤ããæ¥æãããã°è«çåé¤æ¸ã¿ãNULLã ã£ããæªåé¤ã¨ããäºãããã¨ãã¦ãã¼ã¯å¶ç´ãåºæ¥ã¾ãããã©ãããã®ãè¯ããã ããã
ä½è«
MySQLã®ããã¥ã¡ã³ãã£ã¦ããªããèªã¿ã«ããããã¦ãã¼ã¯å¶ç´ã«ã¤ãã¦æ¸ãã¦ãããã¼ã¸ããçµå±ç®æ¬¡ããã¯è¦ã¤ããããªãã£ãã