Возможность доступа к данным через операторы pyodbc и SELECT, но в SQL новые таблицы не отображаются - PullRequest
1 голос
/ 13 июня 2019

У меня есть следующий код, который работает без ошибок и возвращает ожидаемый результат при печати результатов созданного мной курсора pyodbc.

cnxn = pyodbc.connect(MY_URL)
cursor = cnxn.cursor()
cursor.execute(
    '''
    CREATE TABLE tablename(
        filename VARCHAR(100),
        synopsis TEXT,
        abstract TEXT,
        original TEXT,
        PRIMARY KEY (filename)
    )
    '''
)
for file in file_names_1:
    try:
        query = produce_row_query(file, tablename, find_tag_XML)
        cursor.execute(query)
    except pyodbc.DatabaseError as p:
        print(p)

result = cursor.execute(
    '''
    SELECT filename, 
    DATALENGTH(synopsis), 
    DATALENGTH(abstract), 
    original
    FROM ml_files
    '''
)

for row in cursor.fetchall():
    print(row)

Однако на моем сервере MS SQL новые таблицы не отображаются. Я пропускаю шаг, чтобы протолкнуть изменения или что-то в этом роде?

1 Ответ

1 голос
/ 13 июня 2019

Вам необходимо зафиксировать изменения, иначе они не будут обновлены в вашей фактической базе данных.

cnxn.commit()
...