如何對SELECT TOP @topN 做參數傳入查詢_Incorrect syntax near '@topN'問題排除

 

由於直接
SELECT TOP @topN .....
這樣子搭配ado.net 執行會一直報錯
Incorrect syntax near '@topN'


因此經上網查才發現要多加一組括號....(還滿多人遇到的)
SELECT TOP (@topN) .....


但是如果只是單純這樣改仍有機會碰到錯誤
The number of rows provided for a TOP or FETCH clauses row count parameter must be an integer.

必須強制轉型讓其被識別為INT

SELECT TOP (cast(@topN as int)) .....




Ref:
SQL: How do I use parameter for TOP like in SELECT TOP @amount? [duplicate]

The number of rows provided for a TOP or FETCH clauses row count parameter must be an integer

Issue using variable and TOP clause

留言

這個網誌中的熱門文章

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header

經得起原始碼資安弱點掃描的程式設計習慣培養(三)_7.Cross Site Scripting(XSS)_Stored XSS_Reflected XSS All Clients

(2021年度)駕訓學科筆試準備題庫歸納分析_法規是非題