Я пытаюсь сделать локальную копию некоторых таблиц из базы данных MSSQL-сервера только для чтения в SQLite. Я использую sqlalchemy для этого, однако, похоже, я не могу найти решение.
Вот что я попробовал до сих пор:
Я отражаю таблицу, которую хочу скопировать, используя:
meta = MetaData()
engine_server = create_engine(dburl) # sql-server connection
engine_local = create_engine("sqlite:///local.db")
meta.create_all(engine_local)
-------
master_table = Table('master', meta, autoload=True, autoload_with=engine_server)
meta.create_all(engine_local)
После этого я получаю следующую ошибку:
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such collation sequence: SQL_Latin1_General_CP1_CS_AS
[SQL:
CREATE TABLE "master" (
"ITEM_NAME" NVARCHAR(200) COLLATE "SQL_Latin1_General_CP1_CS_AS",
....
....
....
)
]
Я думаю, что это как-то связано с диалектом, который использует sqlalchemy при извлечении таблицы из базы данных сервера.
Я довольно плохо знаком с базами данных и sqlalchemy, я был бы признателен за любые идеи о том, как это сделать.