国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

VB6.0 調用存儲過程的例子 (前言)

2024-07-21 02:20:55
字體:
來源:轉載
供稿:網友
vb調用存儲過程的例子 前言

(說明:以下代碼摘自微軟的msdn,經過測試沒問題。)



vb調用存儲過程的方法很多,如利用ado對象的recordset.open方法,ado對象的connection.excute方法等,都可以獲得記錄集信息。本主題討論的是使用parameter對象調用存儲過程,而且可以獲得許多意外的信息。


首先需要在sql server中建立一個存儲過程。請確定已安裝了sql server 2000的任何版本,且含有pubs數據庫。

打開“查詢分析器”,啟動你本地的sqlserver,然后將以下的sql語句copy到所打開的查詢編輯框中。按下“f5”鍵。ok,存儲過程adotestrpe便生成了。



use pubs

go

if exists (select * from sysobjects where id =

object_id('dbo.adotestrpe') and sysstat & 0xf = 4)

drop procedure dbo.adotestrpe

go



create procedure adotestrpe

(

@setrtn int=0 output,

@r1num int=1,

@p1num int=1,

@e1num int=1,

@r2num int=2,

@p2num int=2,

@e2num int=2

)

as

declare @iloop int

declare @printtext varchar(255)

declare @ierrnum int



/* check for no resultsets - needed to get the return value back */

if @r1num + @r2num = 0 select null



/* resultset 1 ******************************* */



if @r1num > 0

begin

set rowcount @r1num

select 'resultset 1' rsnum, title

from pubs..titles

set rowcount 0

end



/* must raise a default error context in which to return the print */

/* statement */

/* (if none present) since print statements are a severity level of */

/*0. */

if (@p1num > 0) and (@e1num = 0) raiserror ("raiserror.perror1",

11, 2)



if @p1num > 0

begin

select @iloop = 0

while @iloop < @p1num

begin

select @iloop = @iloop + 1

select @printtext = 'print.resultset.1: line ' +

convert(char(2), @iloop)

print @printtext

end

end



if @e1num > 0

begin

select @iloop = 0

while @iloop < @e1num

begin

select @iloop = @iloop + 1

select @ierrnum = @iloop + 201000

raiserror ("raiserror.resultset.1", 11, 2)

end

end



/* resultset 2 ******************************* */



if @r2num > 0

begin

set rowcount @r2num

select 'resultset 2' rsnum, title

from pubs..titles

set rowcount 0

end



/* must raise a default error context in which to return the print */

/* statement */

/* (if none present) since print statements are a severity level of */

/* 0. */

if (@p2num > 0) and (@e2num = 0) raiserror ("raiserror.perror2",

11, 2)



if @p2num > 0

begin

select @iloop = 0

while @iloop < @p2num

begin

select @iloop = @iloop + 1

select @printtext = 'print.resultset.2: line ' +

convert(char(2), @iloop)

print @printtext

end

end



if @e2num > 0

begin

select @iloop = 0

while @iloop < @e2num

begin

select @iloop = @iloop + 1



select @ierrnum = @iloop + 202000

raiserror ("raiserror.resultset.2", 11, 2)

end

end



/* return & output ************************************ */



select @setrtn = -1

return @setrtn

go



運行完畢后,若不存在任何錯誤,請關閉“查詢分析器”,然后繼續下面的操作。否則可能是你的sql server 2000沒有安裝正確或copy時出了問題。



打開vb6.0,新建一個工程,默認有一個窗體form1(若沒有請添加一個新的窗體,命名為form1),在該窗體中添加一個commandbutton。保存該工程。
,歡迎訪問網頁設計愛好者web開發。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长岭县| 大兴区| 行唐县| 老河口市| 陆丰市| 杭州市| 怀集县| 佳木斯市| 上饶市| 攀枝花市| 定结县| 永康市| 铜山县| 同心县| 宣恩县| 镇康县| 双辽市| 金沙县| 山东省| 麻栗坡县| 乌拉特中旗| 青海省| 佛坪县| 客服| 大洼县| 西林县| 花垣县| 海阳市| 邵阳县| 汤阴县| 黑龙江省| 青阳县| 全椒县| 大名县| 息烽县| 镇巴县| 开远市| 平南县| 新乡县| 和龙市| 砀山县|