2017-10-12 3 views
1

enter image description herepymssql - les commandes SELECT mais UPDATE ne

import pymssql 
import decimal 

CONN = pymssql.connect(server='1233123123', user='s123', password='sa1231231', database='DBforTEST') 
CURSOR = CONN.cursor() 
"""it is good code. here is no problem""" 
CURSOR.execute("SELECT ttt from test where w=2") 
ROW = CURSOR.fetchone() 
tmp = list() 
tmp.append(ROW) 
if ROW is None: 
    print("table has nothing") 
else: 
    while ROW: 
     ROW = CURSOR.fetchone() 
     tmp.append(ROW) 
print(tmp) 
"""it works!""" 

CURSOR.execute(""" 
       UPDATE test 
       SET 
       w = 16 
       where ttt = 1 
       """) 
"it doesnt works" 

J'utilise python 3.5 avec pymssql.

Dans mon code, SELECT état fonctionne, donc je peux garantir la connexion est parfaite. L'état UPDATE ne fonctionne pas en Python.
Le même code fonctionne dans SSMS.

Quel est le problème?
Je suppose que SELECT l'état est seulement pour la lecture, donc DB peut fournir des données, mais UPDATE est en train de modifier le DB, donc DB le bloque.

Comment puis-je le résoudre?

Répondre

2
CONN.commit() 

Si la validation automatique n'est pas définie, vous devez vous engager.