Получить имена таблиц баз данных и восстановить базу данных из Bak-FilePython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получить имена таблиц баз данных и восстановить базу данных из Bak-File

Сообщение Anonymous »

У меня есть несколько бейк-файлов на местном уровне. Каждый BAK-файл имеет только одну базу данных, где имя может отличаться, поэтому я сделал кусок кода в Python, который способен получить имя базы данных из Bak-File. У меня установлено SQL Server и SQL Server Management Studio (SMSS). Этот код работает, и я проверяю его с одним публичным Bak-file: Stackoverflowmini. < /P>
from sqlalchemy import create_engine, text

driver = 'ODBC Driver 17 for SQL Server'
server = r'.\SQLEXPRESS'
file_path_bak = r'C:\Users\user\Downloads\folder\StackOverflowMini.bak'

# Create engine
master_engine = create_engine(f'mssql+pyodbc://{server}/master?driver={driver}&trusted_connection=yes')

with master_engine.connect() as conn:
result = conn.execute(text(f"RESTORE FILELISTONLY FROM DISK = '{file_path_bak}'"))
database_name = result.fetchone()[0]

# Close the connection with the master database
master_engine.dispose()
< /code>
Теперь я хочу добавить код, который может перечислить таблицы из базы данных и в конечном итоге сохранить таблицы в CSV. Однако, прежде чем я смогу туда добраться, я получу ошибку, и я понятия не имею, как ее решить. IS: < /p>
from sqlalchemy import create_engine, text

driver = 'ODBC Driver 17 for SQL Server'
server = r'.\SQLEXPRESS'
file_path_bak = r'C:\Users\ganes\Downloads\New folder (3)\StackOverflowMini_database.bak'

# Create engine
master_engine = create_engine(f'mssql+pyodbc://{server}/master?driver={driver}&trusted_connection=yes')

with master_engine.connect() as conn:
result = conn.execute(text(f"RESTORE FILELISTONLY FROM DISK = '{file_path_bak}'"))
database_name = result.fetchone()[0]

# Close the connection with the master database
master_engine.dispose()

# Create new engine with the database
db_engine = create_engine(f'mssql+pyodbc://{server}/{database_name}?driver={driver}&trusted_connection=yes')

with db_engine.connect() as conn:

result = conn.execute(
text("""
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
"""))

list_table_names = [row[0] for row in result.fetchall()]

db_engine.dispose()
< /code>
Здесь я получаю следующую ошибку: < /p>

InterfaceError: (pyodbc.InterfaceError) ('28000', '[[ 28000]
[microsoft] [Driver 17 для SQL Server] (SqldriverConnect); 4060); «Dekstop \ user ' BR /> не удалось. />https://sqlalche.me/e/20/rvf5)

Во -первых, я понятия не имею, почему я получаю эту ошибку, так как вход в систему Не нужно (насколько я знаю). Во -вторых, с этим я понятия не имею, как решить это.
Кто -нибудь знает, как это решить?

Подробнее здесь: https://stackoverflow.com/questions/794 ... m-bak-file
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Python/SQL - Получить имена таблиц баз данных и восстановить базу данных из Bak -File
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Получить имена таблиц баз данных и восстановить базу данных из Bak-File
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • React Native File File File File Error Type Ошибка ошибки
    Anonymous » » в форуме Android
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous
  • React Native File File File File Error Type Ошибка ошибки
    Anonymous » » в форуме Android
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • React Native File File File File Error Type Ошибка ошибки
    Anonymous » » в форуме Android
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»