muh*_*han 49 sql t-sql sql-server ado.net
试图在我的sql语句中参数化TOP的值.
SELECT TOP @topparam * from table1
command.Parameters.Add("@topparam",SqlDbType.VarChar, 10).Value = somevalue.ToString();
Run Code Online (Sandbox Code Playgroud)
这似乎不起作用.有人有什么建议吗?
只是为了澄清,我不想使用存储过程.
Cad*_*oux 76
在SQL Server 2005及更高版本中,您可以执行以下操作:
SELECT TOP (@topparam) * from table1
Run Code Online (Sandbox Code Playgroud)
你需要至少有SQL Server 2005.这个代码在2005/8工作正常,例如...
DECLARE @iNum INT
SET @iNum = 10
SELECT TOP (@iNum) TableColumnID
FROM TableName
Run Code Online (Sandbox Code Playgroud)
如果您有SQL Server 2000,请尝试一下...
CREATE PROCEDURE TopNRecords
@intTop INTEGER
AS
SET ROWCOUNT @intTop
SELECT * FROM SomeTable
SET ROWCOUNT 0
GO
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11244 次 |
| 最近记录: |