[存儲過程] create procedure test_procedure @cid int ,@y int, @n varchar(10) output as select * from city where [email protected] if @y=1 begin set @n = '成功!' return 0 end else begin set @n = '失敗!' return -1 end go [程序中調(diào)用存儲過程]
private sub form1_load(byval sender as system.object, byval e as system.eventargs) handles mybase.load dim conn as oledbconnection try conn = new oledbconnection("provider=sqloledb;data source=localhost;user id=sa;password=;initial catalog=jiang") dim cmd as new oledbcommand(" {? = call test_procedure(?,?,?)}", conn) conn.open() with cmd .commandtype = commandtype.text ‘這句可以省略,因?yàn)槭悄J(rèn)設(shè)置,但這里還是顯式地寫出以引起注意 .parameters.add("@retval", oledbtype.integer) .parameters.add("@cid", oledbtype.integer) .parameters.add("@y", oledbtype.integer) .parameters.add("@n", oledbtype.varchar, 10) .parameters("@n").direction = parameterdirection.output .parameters("@retval").direction = parameterdirection.returnvalue