インスタンス メソッドまたはコンストラクタ メソッドのシグネチャは、UDTを作成するとき(CREATE TYPE (DISTINCT形式)およびCREATE TYPE (STRUCTURED形式)を参照)、またはUDT定義にインスタンス メソッドまたはコンストラクタ メソッドを追加するとき(ALTER TYPEを参照)に指定する必要がある部分的な定義です。
UDT定義のために指定されるメソッド シグネチャはインスタンス メソッドまたはコンストラクタ メソッドを完全に定義するものではありませんが、インスタンス メソッドまたはコンストラクタ メソッドの以下の点を規範となる仕方で定義します。
- 指定のメソッドとCREATE TYPE文を使用して作成されるUDTとの関連。
- その特定名、パラメータ スタイル、SQLデータ アクセス、および確定的(DETERMINISTIC)かどうか(メソッド定義はCREATE METHOD定義とCREATE TYPE定義に分けられるを参照)。これらの指定はすべて必須です。
メソッド シグネチャもまた、返すデータ型を(おそらく重複して)定義します。RETURNS句は、メソッド シグネチャでは必須ですが、CREATE METHOD内に含まれる句の中ではオプションであることに注意する必要があります。両方指定される場合は、その定義が同じでなければなりません。
メソッド シグネチャは、それに関連したメソッド本体からの次の項目のリストを重複かつ一様に指定する必要があります。
- そのメソッド名。
- そのパラメータ リスト。
- CONSTRUCTORキーワード(それに関連したCREATE METHOD文のメソッド本体でそのように定義される場合)。
関連するCREATE METHOD文によって明示的に定義されている場合、INSTANCEキーワードを指定する必要はない。メソッドにキーワードを指定しない場合、デフォルトでは常にインスタンス メソッドと見なされるからです。
メソッド本体の作成は、常にCREATE METHOD文を使って行なう必要があります。