Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Ultra Light J » Ultra Light J リファレンス » Ultra Light J API リファレンス

 

ForeignKeySchema インタフェース

外部キーのスキーマを指定します。

構文
public ForeignKeySchema
備考

このインタフェースをサポートするオブジェクトは Connection.createForeignKey(String) メソッドから返されます。

外部キーには 1 つ以上のカラム参照が必要です。参照先カラムのセットはプライマリ・テーブルのカラムである必要があり、またこのセットはプライマリ・テーブルに対するプライマリ・キーまたはユニーク・キーの制約の対象である必要があります。

次の例は、単純なデータベースのスキーマを作成する方法を示しています。Invoices テーブルには Products テーブルへの外部キーがあり、すべての送り状で有効な製品 ID を参照する必要があることを指定しています。

TableSchema table_schema;
IndexSchema index_schema;
ForeignKeySchema fkey_schema;

table_schema = conn.createTable("Invoices");
table_schema.createColumn("inv_id", Domain.INTEGER);
table_schema.createColumn("quantity", Domain.INTEGER);
table_schema.createColumn("sold_prod_id", Domain.INTEGER);

index_schema = table_schema.createPrimaryIndex("primary");
index_schema.addColumn("inv_id", IndexSchema.ASCENDING); 

table_schema = conn.createTable("Products");
table_schema.createColumn("prod_id", Domain.INTEGER);
table_schema.createColumn("prod_name", Domain.VARCHAR, 40);

index_schema = table_schema.createPrimaryIndex("primary");
index_schema.addColumn("prod_id", IndexSchema.ASCENDING);

fkey_schema = conn.createForeignKey(
    "Invoices", "Products", "InvoiceToProduct" );
fkey_schema.addColumnReference("sold_prod_is", "prod_id");

conn.schemaCreateComplete();
メンバ

ForeignKeySchema のすべてのメンバ (継承されたメンバも含みます) を以下に示します。


addColumnReference メソッド