mssql procedure
----------------------------------------------------
CREATE PROCEDURE [dbo].[proc_name]
@pnum int null,
@pstr nvarchar(50) null,
@rnum int null output,
@rstr nvarchar(50) null output
AS
BEGIN
SET NOCOUNT ON;
set @rnum = @pnum + 10;
set @rstr = 'passed:' + @pstr;
-- case 1. no select
-- case 2. SELECT @rnum as result_number, @rstr as result_string
END
--- python - pymssql
#-*- encoding: utf-8 -*-
import pymssql
connection = pymssql.connect('ip address', 'user', 'password', "database")
cursor = connection.cursor()
params = (1, 'str', pymssql.output(int,0), pymssql.output(str,''))
respose = cursor.callproc('dbo.proc_name',params)
print response
print response[2]
print response[3]
for row in cursor:
print row[0]
print row[1]
============================= result compare
case 1.
-----------------------------------------------
(1, 'str', 10, u'passed:str')
10
passed:str
---
case 2.
-----------------------------------------------
(1, 'str', 0, '')
0
<--- ''
10
passed:str
---