2015-10-01 9 views
5

:私はその属性を省略した場合liquibaseカラムのデフォルトのnull許容制約設定は何ですか?私はこのように、新しいテーブルを作成してい

<createTable tableName="myTable"> 
     <column name="key" type="int" autoIncrement="true"> 
      <constraints primaryKey="true" primaryKeyName="PK_myTable" nullable="false"/> 
     </column> 
     <column name="name" type="nvarchar(40)"> 
      <constraints nullable="false"/> 
     </column> 
     <column name="description" type="nvarchar(100)"> 
      <constraints nullable="true"/> 
     </column> 
    </createTable> 

限りnullable制約として、デフォルトの設定は何ですか?私はこれをしなかった場合

例えば、 :

<column name="description" type="nvarchar(100)"/> 

は...列はNULL可能でしょうか?

さらに重要なことは、このを指定するドキュメントはどこですか(このような質問があります)?

は、私がここに見えた:Liquibase Column Tag、それだけであいまいに言う:

NULL可能 - 列のNULL可能はありますか?

答えて

4

これは文書化されていませんが、ソースコードを見ていますが、指定しないと、列に制約が追加されていないように見えます。これを自分で確認できる方法の1つは、liquibase updateSqlコマンドを使用して生成されたSQLを調べることです。

+0

あなたが見たコードを教えてください。 (パッケージ、クラス) – LimaNightHawk

+1

ColumnConfig:https://github.com/liquibase/liquibase/blob/master/liquibase-core/src/main/java/liquibase/change/ColumnConfig.java – SteveDonie

+0

特にAddColumnChange:https:// github.com/liquibase/liquibase/blob/master/liquibase-core/src/main/java/liquibase/change/core/AddColumnChange.java#L100-L102 – SteveDonie

関連する問題