問題:
今天一同事請教博主,他拼接了一個語句,select表格形式數據,而後使用@@rowcount獲取到行數。
但他又有這樣特別的需求:想只獲取行數而不返回表格數據結果,由於是while循環,不想返回那麼屢次表格到客戶端,並且後面又想複用這個返回表格形式數據的腳本字符串,不想在這個腳本字符串上改爲count函數的拼接而影響後面複用腳本。
試圖使用這個方法:把腳本在SQL Server Management Studio中打開,右擊【查詢選項】→【結果】→【網格】→勾選【執行後放棄結果】,結果確實是不返回table表格數據,但連要返回的那部分也都一併不返回了,連print都不顯示了,所以這個方法不能知足這個特殊需求。sql
解決方案:
經博主編寫demo腳本,使用sp_executesql返回拼接字符串裏面的輸出參數這個知識點,問題獲得瞭解決。博主把這個demo拿出來分享給你們。ide
腳本:函數
() () sp_executesql , N, out ( ( ()
腳本運行結果:spa