2010-07-11 20 views
0

Je me connecte au service Web en utilisant de la mousse.Connexion à MSSQL via le service Web. Python. Suds. SOAP

from suds.client import Client 

client=Client(url) 

#then i'm using web servise methods to get table. It is very big table. 

big_table=client.service.GetVeryBigTable() 

#nd trying read every row 

for row in big_table: 
    print row.Id + row.Nmae + row.Description + row.Item1 +...... 

la question est - Quand je lis la ligne, est-il va de ma mémoire locale, ou lire à chaque fois de webservise à distance? Je veux dire la variable big_table contient le lien à toute la table dans ma mémoire ou le prend-il chaque fois de distance comme l'itérateur?

Répondre

0

Donc, personne ne sait réponse à cette question. Je l'ai compris par moi-même.

Lorsque la méthode répond, elle charge toutes les données dans ma mémoire locale au format XML. Alors quand j'essaie d'obtenir un gros résultat. Par exemple, une grosse table a cassé la connexion et je me suis trompé.

Le seul moyen dans mon cas est d'obtenir les ID en premier, que de faire une demande pour chaque ligne en utilisant l'itération des ID.