sqlserver存儲過程調用
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ '
from [' + @tblName + '] where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ '
from ['+ @tblName + '] '+ @strOrder--如果是第一頁就執行以上代碼,這樣會加快執行速度
上面兩個from前有全形符號,別換行改到一起就可以了
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from [' + @tblName + '] where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['+ @tblName + '] '+ @strOrder--如果是第一頁就執行以上代碼,這樣會加快執行速度
Ⅱ sqlserver 2個返回值參數的存儲過程調用方法
你這個是oracle的,sqlserver不是這樣實現的。
返回值int 你要這樣定義
ALTER PROCEDURE [dbo].[proc_res_get_check_result] (
@i_olt_ip VARCHAR output
)
AS
然後結果數據集直接在存儲過程中
select * from
(
select ro.onu as onu,ro.olt_ip as olt_ip,ro.pon as pon,ro.onu_id as onuid,ro.check_time as check_time,ro.flag as flag,
ro.onu_name as res_name,ro.onu_sn as res_sn,po.onu_dev_name as ems_name,po.loid as ems_sn
from res_onu_data ro
left join pm_onu po on po.onu_name = ro.onu
where ro.olt_ip = @i_olt_ip
union
select re.onu as onu,re.olt_ip as olt_ip,re.pon as pon,re.onu_id as onuid,re.check_time as check_time,'20000000000000000000' as flag,
'' as res_name,'' as res_sn,po.onu_dev_name as ems_name,po.loid as ems_sn
from res_check_ems re,pm_onu po
where po.onu_name = re.onu and re.olt_ip = @i_olt_ip
)rr order by rr.onu;
就可以了
Ⅲ php SQL Server 存儲過程調用基礎問題
http://www.jb51.net/article/32097.htm
你現在的報錯是提示什麼呢,上面的代碼是沒有問題的。
能提供下錯誤信息嗎,或者其他異常執行結果。
---
代碼部分
1、把最上面的資料庫連接可以單獨寫一個 .php ,對應的釋放資料庫也寫單獨寫一個 .php頁面 供其他頁面直接調用,不需要每次都是去連
2、建議嘗試下面向對象寫法,
Ⅳ sqlserver 存儲過程調用報錯
存儲過程問題
不是提示了嗎?
PAYSTAT24MONTH 無效
你看是不是寫錯列名了。
或者你A調用B的時候某些參數類型變了。
你可通過print來列印出你運行到的步驟來調試的。
Ⅳ 如何在sqlserver存儲過程中調用互動式外部程序
--調用外部程序或者命令
exec xp_cmdshell 'dir c:\'
注意不能調用需要用戶干預才能繼續運行的程序.
使用Sqlserver的xp_CmdShell擴展存儲過程的一個注意:
這個存儲過程只能執行Dos控制台程序,其他的Exe程序不能在Sqlserver進程空間執行.
但外部程式必須是一個自生滅的程式(即沒有消息循環、不需要與用戶交互),否則將會進入死循環中。
Ⅵ sqlserver 鏈接伺服器調用存儲過程
加入 我創建一個存儲過程:
create porc AB_CDE
@A int,
@B int
as
這裡面就是內容了
就在陣容裡面具體 操作 存儲過程~~~~~~~~
給一個例子:
--插入時要判斷是否重復插入
declare @id int
declare @sNo varchar(100)
declare @sName varchar(100)
declare @sex varchar(10)
declare @jiguan varchar(100)
declare @gongzuodanwei varchar(200)
declare @wu varchar(100)
declare @tongxundi varchar(200)
declare @youzhengbianma varchar(100)
declare @lianxidianhua varchar(100)
declare @yidongdianhua varchar(100)
declare @dianziyouxiang varchar(100)
declare @shenfenzheng varchar(100)
declare @chushengriqi datetime
declare @xueli varchar(100)
declare @biyexuexiao varchar(100)
declare @biyezhuanye varchar(100)
declare @biyenianyue datetime
declare @xuewei varchar(100)
declare @mingzhu varchar(100)
declare @zhengmianmao varchar(100)
declare @regDate datetime
declare @result int
set @result=0
set @regDate=getdate()
begin tran
declare cur cursor for select 學號,姓名,性別,籍貫,工作單位,職務,通訊地址,郵政編碼,聯系電話,行動電話,電子郵箱,身份證號碼,出生日期,學歷,畢業學校,畢業專業名稱,畢業年月,學位,民族,政治面貌 from #tmp
open cur
fetch next from cur into @sNo,@sName,@sex,@jiguan,@gongzuodanwei,@wu,@tongxundi,@youzhengbianma,@lianxidianhua,@yidongdianhua,@dianziyouxiang,@shenfenzheng,@chushengriqi,@xueli,@biyexuexiao,@biyezhuanye,@biyenianyue,@xuewei,@mingzhu,@zhengmianmao
while @@fetch_status=0
begin
--學生在學生表中不存在才插入
if not exists (select 1 from vtd02 where 學號=@sNo)
begin
--插入學生資料
exec @id=PTD02_Insert @F01=@sName,@F02=@sex,@F36=@sNo,@FIDTB01=@classId,@F32=10,@F05=@jiguan,
@F17=@gongzuodanwei,@F15=@wu,@F11=@tongxundi,
@F07=@youzhengbianma,@F10=@lianxidianhua,@F09=@yidongdianhua,
@F08=@dianziyouxiang,@F18=@shenfenzheng,@F06=@chushengriqi,
@F43=@xueli,@F12=@biyexuexiao,@F13=@biyezhuanye,
@F14=@biyenianyue,@F44=@xuewei,@F04=@mingzhu,@F45=@zhengmianmao
--插入學生帳號
exec PUB02_Insert @F01=@sNo,@F02=@password,@FIDUB01=3,@FIDF03=@id,@F04=1,@F05=@regDate
fetch next from cur into @sNo,@sName,@sex,@jiguan,@gongzuodanwei,@wu,@tongxundi,@youzhengbianma,@lianxidianhua,@yidongdianhua,@dianziyouxiang,@shenfenzheng,@chushengriqi,@xueli,@biyexuexiao,@biyezhuanye,@biyenianyue,@xuewei,@mingzhu,@zhengmianmao
end
else
begin
fetch next from cur into @sNo,@sName,@sex,@jiguan,@gongzuodanwei,@wu,@tongxundi,@youzhengbianma,@lianxidianhua,@yidongdianhua,@dianziyouxiang,@shenfenzheng,@chushengriqi,@xueli,@biyexuexiao,@biyezhuanye,@biyenianyue,@xuewei,@mingzhu,@zhengmianmao
end
end
close cur
deallocate cur
if @@error<>0 rollback tran
commit tran
上面比如是一個存儲過程。
然後: exec PUB02_Insert @F01=@sNo,@F02=@password,@FIDUB01=3,@FIDF03=@id,@F04=1,@F05=@regDate
這個就是在上面掉用的存儲過程。 exec 存儲過程name 具體參數
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
vaela
Ⅶ 在Net下調用SqlServer2k中存儲過程
.Net下調用SqlServer2k中存儲過程
.Net下調用SqlServer2k中存儲過程
首先,在SqlServer中創建存儲過程,在調用時分為有參數和沒有參數兩種情況,首先,在SqlServer中創建存儲過程,在調用時分為有參數和沒有參數兩種情況,
先就簡單的沒有參數的情況簡要的介紹:先就簡單的沒有參數的情況簡要的介紹:
假設存儲過程如下:
CREATE
PROC
SelectAll假設存儲過程如下:
CREATE
PROC
SelectAll
AS
AS
SELECT
*
FROM
StudentInf
SELECT
*
FROM
StudentInf
則此sp的調用如下:則此sp的調用如下:
SqlCommand
selectCMD
=
new
SqlCommand(「SelectAll」,
conn);
SqlCommand
selectCMD
=
new
SqlCommand(「SelectAll」,
conn);
//conn
為SqlConnection
//conn為SqlConnection
selectCMD.CommandType
=
CommandType.StoredProcere;
selectCMD.CommandType
=
CommandType.StoredProcere;
如果需要將結果集加到某個DataAdapter上,則可如下:如果需要將結果集加到某個DataAdapter上,則可如下:
SqlDataAdapter
stuDA
=
new
SqlDataAdapter();
SqlDataAdapter
stuDA
=
new
SqlDataAdapter();
stuDa.SelectCommand
=
selectCMD;
stuDa.SelectCommand
=
selectCMD;
如果有參數:create
proc
andSelect如果有參數:create
proc
andSelect
@StudentId
varchar(10),
@StudentId
varchar(10),
@StudentName
varchar(10),
@StudentName
varchar(10),
As
As
Select
*
from
StudentInf
where
StudentId
=
@StudentId
and
StudentName
=
@StudentName
Select
*
from
StudentInf
where
StudentId
=
@StudentId
and
StudentName
=
@StudentName
則參數可以如下添加:則參數可以如下添加:
selectCMD.Parameters.Add(
「@StudentId
」,
SqlDbType.NVarChar,
10);
selectCMD.Parameters.Add(
「@StudentId
」,
SqlDbType.NVarChar,
10);
selectCMD.Parameters.Add(
「@StudentName
」,
SqlDbType.NvarChar,
10);
selectCMD.Parameters.Add(
「@StudentName
」,
SqlDbType.NvarChar,
10);
如果只有一個參數,也可以這樣賦值:如果只有一個參數,也可以這樣賦值:
SqlParameters
onePara
=
selectCMD.Parameters.Add(
「@StudentId
」,
SqlDbType.NVarChar,
10);
SqlParameters
onePara
=
selectCMD.Parameters.Add(
「@StudentId
」,
SqlDbType.NVarChar,
10);
onePara.Value
=
「
a
string
」
onePara.Value
=
「
a
string
」
Ⅷ sql server 存儲過程如何調用存儲過程
調用存儲過程demo(無參數的存儲)
進入查詢界面輸入以下內容
exec
demo----執行存儲過程