尽管Python脚本在IDLE中成功运行,为什么不创建表?

时间:2014-08-23 06:26:58

标签: python-2.7 pymssql

这是我的脚本成功运行,但我仍然无法看到在SQL Server的数据库中创建的表。

import _mssql
conn = _mssql.connect(server='MAQSOOD-PC', user='sa', password='123', \
    database='TestDB')
conn.execute_non_query('CREATE TABLE persons(id INT, name VARCHAR(100))')
conn.execute_non_query("INSERT INTO persons VALUES(1, 'John Doe')")
conn.execute_non_query("INSERT INTO persons VALUES(2, 'Jane Doe')")

可能是什么问题?

1 个答案:

答案 0 :(得分:0)

我认为问题在于你需要提交交易。

请尝试使用此版本:

import pymssql

conn = pymssql.connect('MAQSOOD-PC', 'sa', '123', 'tempdb')
cur = conn.cursor()

cur.execute('CREATE TABLE persons(id INT, name VARCHAR(100))')
cur.commit()

cur.execute("INSERT INTO persons VALUES (1, 'John Doe')")
cur.execute("INSERT INTO persons VALUES (2, 'Jane Doe')")
cur.commit()

cur.execute('SELECT * FROM persons')

for row in cur:
   print(row)