SqlName (メソッド・キーワード)
投影された SQL ストアド・プロシージャの既定の名前をオーバーライドします。メソッドが SLQ ストアド・プロシージャとして投影される場合にのみ適用されます。
使用法
メソッドが SLQ ストアド・プロシージャとして投影されるときに使用される既定の名前をオーバーライドするには、以下の構文を使用します。
ClassMethod name(formal_spec) As returnclass [ SqlProc, SqlName = sqlname ]
{ //implementation }
sqlname は SQL 識別子です。
詳細
このメソッドを SQL ストアド・プロシージャとして投影するときに、この名前をストアド・プロシージャの名前に使用します。
既定値
このキーワードを省略すると、InterSystems IRIS は SQL 名を以下のように決定します。
CLASSNAME_METHODNAME
この既定では大文字を使用します。ストアド・プロシージャを呼び出す際には大文字も小文字も使用できますが、SQL では大文字と小文字は区別されないためです。
つまり、以下の例では、既定の SQL 名の値は TEST1_PROC1 となります。この既定値は SELECT 文で指定します。
Class User.Test1 Extends %Persistent
{
ClassMethod Proc1(BO,SUM) As %INTEGER [ SqlProc ]
{
///definition not shown
}
Query Q1(KD As %String,P1 As %String,P2 As %String) As %SqlQuery
{
SELECT SUM(SQLUser.TEST1_PROC1(1,2)) AS Sumd
FROM SQLUser.Test1
}
}