Utilisation de pymssql, comment appeler une procédure stockée avec sortie

  1. Ce code fonctionne mais ne sait pas comment get la sortie?

    storedProcedure = "dbo.myproc" cursor = conn.cursor() query = """DECLARE @test_suite_dispatch_id int; exec {sp} @test_suite_id={id}, @test_suite_dispatch_id = @test_suite_dispatch_id OUTPUT """.format( sp=storedProcedure, id=TestSuiteData['TestSuite_ID']) print( query ) cursor.execute( query ) cursor.close() 
  2. Comment puis-je get ce qui précède à l'aide de la méthode callproc de pymssql?

    Ce code ne fonctionne pas:

     out = None cursor.callproc(storedProcedure, (TestSuiteData['TestSuite_ID'], out)) 

    Cela ne fonctionne pas non plus:

     cursor.callproc(storedProcedure, [(TestSuiteData['TestSuite_ID']), out]) 

    J'ai aussi essayé:

     cursor.callproc(storedProcedure, [(TestSuiteData['TestSuite_ID']), pymssql.output(int)]) 

    et

     cursor.callproc(storedProcedure, [(TestSuiteData['TestSuite_ID']), pymssql.output(long)]) 

Qu'en pensez-vous?

Source: https://stackoverflow.com/a/192032/2965993

D'accord, je l'ai compris.

En fonction de ce que votre sortie va être, voici ce que j'ai fait et cela fonctionne:

 msg = cursor.callproc(store_proc, (file_name, '0x0a', pymssql.output(str))) print(msg[2]) 

Évidemment, mon proc stocké accepte différentes valeurs, mais vous pouvez courir avec.