# create=true 属性

#### 機能

Derbyのデータベース接続URLに記述して、標準的な構成のデータベースを作成して、それに接続することができます。データベースの作成に失敗した場合、エラーログにエラーが出力されて、データベースが見つからなかったことを表すSQLExceptionとともに、接続の試みは失敗します。

もしデータベースが既に存在した場合は、既存のデータベースに接続されて、SQLWarningが発行されます。

JDBCでは、作成時に接続に失敗したデータベースは、失敗がデータベースへの呼び出しの後であれば、除去されません。 もしデータベース接続URLにcreate=trueを指定して、接続の作成に失敗したなら、データベースのディレクトリを確認してください。 もしディレクトリが存在するなら、データベース作成を次回試みるまでに、内容とともにそれを削除してください。

#### データベース所有者

データベースを作成した時の認証識別子が、データベースの所有者となります。(user=userName 属性を参照してください。 認証とSQL認証の両方が有効である場合(Derby ディベロッパーズ ガイドの「ユーザ認証を有効にする」と「SQL標準認証モードを設定する」を参照してください。)、データベースの所有者だけが、データベースの終了や、暗号化、新しい起動パスワードおよび暗号化鍵による再暗号化、フルアップグレードを行うことができます。 認証が有効ではなく、ユーザが指定されていない場合、データベース所有者は既定で「APP」です。これは既定のスキーマ名でもあります。(SET SCHEMA 文を参照してください。)

#### ほかの属性との組み合わせ

(データベース接続URLのサブプロトコルの後に)databaseNameを、もしくは、databaseName=nameofDatabase属性を指定しなければなりません。

この属性は、この他の属性とも組み合わせることができます。データベースの作成時に地域の指定をするなら、territory=ll_CC属性を利用してください。
注: create=trueを指定したとき、データベースが既に存在しているなら、SQLWarningが挙がります。

    jdbc:derby:sampleDB;create=true

    jdbc:derby:;databaseName=newDB;create=true;

親トピック: データベース接続URLに属性を指定する。