22245


下記認識で合っているでしょうか？

**DEFAULT指定がある時**  
・その内容

**DEFAULT指定がない、かつNULLを許可している時**  
・NULL

**DEFAULT指定がない、かつNULLを許可していない時**  
・指定なし

**仮に上記認識が正しければ、**  
・「DEFAULT値としてNULLを指定する場合」と、「DEFAULT値を指定しないが、NULLを許可する場合」は同じ？

<https://dev.mysql.com/doc/refman/5.6/ja/data-type-defaults.html>


CC BY-SA 3.0
2016-02-18T10:27:16.347
22234
2016-02-18T15:14:50.977
7886
question
mysql
デフォルト値の決定の仕方


DEFAULT in mysql is the same on most of the database native query.

DEFAULT指定がある時  
・その内容

[code]

    Create Table Test
    (
         Id Int Auto_Increment Primary Key
        ,Name Varchar(30) Not Null
        ,TestValue Number Default 10
    );
    
    Insert Into Posts (Name) Values ('re9');
    
    +---------+------+---------------------------------+
    | Id      | Name | TestValue                       |
    +---------+------+---------------------------------+
    | 1       | re9  | 10                              |
    +---------+------+---------------------------------+
    
[/code]

DEFAULT指定がない、かつNULLを許可している時  
・NULL

[code]

    TestValue Varchar(30)          --- NULL ok
    
[/code]

DEFAULT指定がない、かつNULLを許可していない時  
・指定なし

[code]

    TestValue Varchar(30) NOT NULL --- NULL not ok 
    
[/code]

The last question depends on if the null value is allowed in your column. For
any non constraint violations or non NOT NULL definitions defined in the sql
columns you will know if it is allowed.

Below are all the same:

[code]

    TestValue type                   --- null ok
    TestValue type NULL              --- null ok
    TestValue type DEFAULT NULL      --- null ok
    TestValue type NULL DEFAULT NULL --- null ok
    
[/code]


CC BY-SA 3.0
2016-02-18T15:14:50.977
22245
2016-02-18T15:14:50.977
14435
22234
answer