MS SQL Server 2008 で TVP ストアド プロシージャを作成しました。
CREATE PROCEDURE [TVPSP] @CID INT
,@OID INT = NULL
,@GAS ParamTypeTVP readonly
,@ErrorText VARCHAR(100) OUTPUT
AS
BEGIN
select 1
RETURN
END
TVP タイプも作成しました。
CREATE TYPE [MDF].[ParamTypeTVP] AS TABLE(
[ParamID] [int] IDENTITY(1,1) NOT NULL,
[pInt1] [int] NULL,
[pVarchar1] [varchar](777) NULL,
PRIMARY KEY CLUSTERED
(
[ParamID] ASC
)WITH (IGNORE_DUP_KEY = OFF)
)
Powerbuilder 組み込みメソッドを使用して宣言を生成しました。結果は次のとおりです。
function long TVPSP(long CID,long OID,string GAS,ref string ErrorText) RPCFUNC ALIAS FOR "TVPSP"
ご覧のとおり、PB は TVP パラメータの文字列変数を生成しましたが、これは false です (もちろん、PB からの呼び出しは失敗します)。どうにかして機能させることは可能ですか?もちろん、回避策のアイデアはありますが (たとえば、TVP パラメーターを無視するようにラッパー sp を作成するなど)、TVP でこのように機能させる方法を知りたいです!
事前にthx!
ガボール