Python pyodbc,执行sql查询时获取返回的消息

时间:2018-10-10 11:23:43

标签: python sql-server python-3.x

我有一个文件,其中包含查询列表,包括创建一些表以及在表中插入一些行。

成功执行查询后,如何获得如图所示的消息。

Started executing query at Line 393
Commands completed successfully.

显示为输出。

在尝试中,如果任何查询执行失败,我都会收到错误消息。

我还想显示与SQL输出完全相同的成功消息。

pyodbc中有什么方法可以做到这一点吗?

代码:

filename = "script.sql"
with open(filename,'r') as inserts:
    sqlScript = inserts.readlines()
    for line in sqlScript:
        sql = line.rstrip()
        try:
            cursor.execute(sql)
            print('Success')
        except Exception as e:
            print(str(e))

文件内容“ script.sql”

CREATE SCHEMA [app];
CREATE TABLE [app].[table1]([table1_id] TINYINT NOT NULL,[table1_data] NCHAR(25) NOT NULL);
CREATE TABLE [app].[table2] ([table2_id] TINYINT NOT NULL,[table2_data] NCHAR(25) NOT NULL);
INSERT INTO app.table1(table1_id,table1_data) VALUES (1,'test data');
INSERT INTO app.table1(table1_id,table1_data) VALUES (2,'test data');
INSERT INTO app.table1(table1_id,table1_data) VALUES (3,'test data');
INSERT INTO app.table1(table1_id,table1_data) VALUES (4,'test data');
INSERT INTO app.table1(table1_id,table1_data) VALUES (5,'test data');
INSERT INTO app.table2(table2_id,table2_data) VALUES (1,'test data');
INSERT INTO app.table2(table2_id,table2_data) VALUES (2,'test data');
INSERT INTO app.table2(table2_id,table2_data) VALUES (3,'test data');
INSERT INTO app.table2(table2_id,table2_data) VALUES (4,'test data');
INSERT INTO app.table2(table2_id,table2_data) VALUES (5,'test data');

我想为每个查询打印图像中显示的消息,而不是为每个查询打印成功消息。

enter image description here

0 个答案:

没有答案