に宣言された変数を置くことができない。 B.FIDCategoryを選択 nvarchar型の値を変換する際は、私は私のSPでこのコードを持ってsp_executesqlを
データタイプintへのは、」変換に失敗しました:
ALTER PROCEDURE [dbo].[API_LIST_CONTENT_TEST] @Page int, @PageSize int = 20, @TotalPage int Output AS BEGIN SET NOCOUNT ON -- PAGING -- DECLARE @FirstPage INT, @LastPage INT, @TotalRecord MONEY SELECT @FirstPage = (@Page - 1) * @PageSize, @LastPage = (@Page * @PageSize) + 1, @TotalPage = 0, @TotalRecord = 0 -- DATA -- CREATE TABLE #Data( ID INT IDENTITY(1,1) NOT NULL, Distance INT ) DECLARE @TodayOpen nvarchar(100), @TodayClose nvarchar(100), @SQLSELECT NVARCHAR(MAX) SELECT @TodayOpen = DATENAME(dw,GETDATE())+'Open', @TodayClose = DATENAME(dw,GETDATE())+'Close', @SQLSELECT = '' SELECT @TotalRecord = COUNT(1) FROM #Data SELECT @TotalPage = CASE WHEN @TotalRecord = 0 THEN 0 ELSE CEILING(@TotalRecord/@PageSize) END SELECT @SQLSELECT = N' SELECT B.[Address], B.'+ @todayOpen +', B.'+ @todayClose +' FROM #Data D INNER JOIN dbo.Bis B WITH (NOLOCK) ON D.BizID = B.BizID LEFT JOIN dbo.Category C WITH (NOLOCK) ON B.FIDCategory = C.CategoryID WHERE B.[Status] = 3 AND ID > '+ @FirstPage +' ORDER BY ID' EXEC (@SQLSELECT) DROP TABLE #Data END
それは例外となり、...... .... .... B. [ステータス] = 3 AND ID> '
@FirstPage
はSQLSELECTで読み取ることができません。なぜですか?
私はFirst Grad Programmerですので、助けてください。
'WHERE B. [状態] = 3とID>「+キャスト(@FirstPage as nvarchar)+ ' –
uは' + Convert(Varchar、@ FirstPage)+ 'のように@FirstPage変数を提供することがあります –
ありがとう!!!!!!!!!! – Richard