你的這個做法沒有意義,一般存儲過程主要是針對sql語句執行效率低和數據完整性等來說的,你用這種方法就單單為了查詢一個表中的TOP信息,這樣與存儲過程的有點恰恰相反,因為這個方法實現存儲過程中取出你所要的信息,同是也能用同樣的方法更簡便的從表中取出你要的信息
『貳』 SQL Server 如何執行 帶參數的 存儲過程
帶參數的存儲過程執行方法如下:
(1)調用通用數據訪問類:SqlHelper,執行SqlHelper.ExecuteNonQuery()方法
(2)使用示例:SqlHelper.ExecuteNonQuery(conn,CommandType.StoredProcere,sqlexec,myparm)
(3)其中傳遞的4個參數如下:
「conn」:為鏈接字元
「CommandType.StoredProcere」:表示要執行的SQL存儲過程類型
「sqlexec」:要執行的SQL存儲過程
「myparm」:為傳遞的參數,它需要參數的初始化、賦予參數名稱、設定類型、長度和值等
(4)當ExecuteNonQuery()執行select 查詢時,結果總是返回-1。ExecuteNonQuery()執行Update、Insert和Delete語句時,返回值為該命令所影響的行數。
『叄』 sql 怎麼執行帶輸出參數的存儲過程
1、
對象資源管理器
中選中你要執行的存儲過程
2、右擊選擇
對話框中的執行存儲過程...
3、在出現的對話框中填入你參數的值
點擊確定
『肆』 sql資料庫中怎樣調用帶參數的存儲過程
在sql
server中
執行帶參數的存儲過程
exec+空格+存儲過程名+空格+參數
多個參數的話用逗號分隔
傳出參數要加output
例如:
exec
P_GetIntegratedFluxOneMoment
@StartTableName,@ColName,@StartTime,@StartValue
output
其中@StartTableName,@ColName,@StartTime,@StartValue都是前面已經定義好的變數
傳入參數也可以不用變數
直接寫值也行
程序中調用的話看你用什麼語言了
各個語言的調用方法不一樣
『伍』 sql server資料庫裡面的帶參存儲過程怎麼用
--創建{里的東西表示必須有的}[里的東西表示可有可無的看實際需求]
CREATE{PROC|PROCEDURE}[schema_name.]procere_name
[{@parameterdata_type}[OUT|OUTPUT]]--參數
[,...n]--表示可以更多參數
AS
{[BEGIN]
sql_statement[;]--表示sql語句
[,...n]--表示更多sql語句
[END]}
[;]
--執行
execprocere_name@parameter=參數值...
『陸』 關於SQL帶參數存儲的問題
你用out輸出參數,那麼你調用這個存儲過程時,就要先定義一個變數來保存你要傳出的參數值,以你的為例:declare @outXM nchar(10) declare @outXSSL int declare @outXSRQ SmallDatetime exec proc_abc 'G00',@outXM output,@outXSSL output,@outXSRQ output
上面是我手寫的,不一定對,但方式肯定是這樣的
『柒』 sql怎麼調用帶參存儲過程
應該是這樣的。
RunProcere這個方法,調用存儲過程,
storedProcName
存儲過程名
parameters
存儲過程參數列表
tableName
這個表名指的是,你的存儲過程對某一張表做了數據的保存或修改,然後通過這個參數來把這個表的數據查出來,fill方法的作用就是
select
「tableName」這個表,然後把結果集放入DataSet中並返回。