Как скопировать таблицы с сервера sql в ms доступ с помощью python и sqlalchemy - PullRequest
0 голосов
/ 05 марта 2020

Я хочу скопировать таблицы с сервера MS SQL на доступ к MS, используя sqlalchemy. Но я не знаю, как это сделать. Пожалуйста помоги. Вот код.

from sqlalchemy import create_engine
from sqlalchemy import select, Table, MetaData
import sqlalchemy_access
import urllib



# =============================================================================
# # Create tables from mssql
# =============================================================================
connection_string_ms = (
    r'Driver={SQL Server};'
    r'Server=myserver;'
    r'Database=mydb;'
    r'Trusted_Connection=yes;'
)
connection_url_ms = f'mssql+pyodbc:///?odbc_connect={urllib.parse.quote_plus(connection_string_ms)}'

engine_ms = create_engine(connection_url_ms)


# Create a MetaData instance
metadata_ms = MetaData(bind = engine_ms)

address = Table('ADDRESS', metadata_ms, autoload = True, autoload_with = engine_ms)


# =============================================================================
# # Paste table into access database
# =============================================================================
connection_string_access = (
    r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};'
    r'DBQ=myaccessdb.accdb;'
    r'ExtendedAnsiSQL=1;'
)
connection_url = f'access+pyodbc:///?odbc_connect={urllib.parse.quote_plus(connection_string_access)}'

engine = create_engine(connection_url)

address.create(engine)

Затем появляется ошибка

ProgrammingError: (pyodb c .ProgrammingError) ('42000', '[42000] [Microsoft] [ODB C Драйвер Microsoft Access] Синтаксическая ошибка в определении поля. (-3553) (SQLExecDirectW) ')

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...