Поделиться через


Краткое руководство. Использование Python для запроса базы данных в База данных SQL Azure или Управляемый экземпляр SQL Azure

Область применения:База данных SQL Azure Управляемый экземпляр SQL Azure Azure Synapse Analytics

При работе с этим кратким руководством вы будете использовать Python для подключения к Базе данных SQL Azure, Управляемому экземпляру SQL Azure или базе данных Synapse SQL, а затем выполните запрос данных с помощью инструкций T-SQL.

Документация mssql-python | Исходный код mssql-python | Пакет (PyPi)

Необходимые компоненты

Для работы с этим кратким руководством вам понадобится:

Настройка

Выполните следующие действия, чтобы настроить среду разработки для разработки приложения с помощью mssql-python драйвера Python.

Замечание

Этот драйвер использует протокол табличного потока данных (TDS ), который включен по умолчанию в SQL Server, базе данных SQL в Fabric и Базе данных SQL Azure. Дополнительная конфигурация не требуется.

Установка пакета mssql-python

mssql-python Получите пакет из PyPI.

  1. Откройте командную строку в пустом каталоге.

  2. Установите пакет mssql-python.

    pip install mssql-python
    

Установка пакета python-dotenv

Получите python-dotenv с PyPI.

  1. В том же каталоге установите python-dotenv пакет.

    pip install python-dotenv
    

Проверка установленных пакетов

Средство командной строки PyPI можно использовать для проверки установки предполагаемых пакетов.

  1. Проверьте список установленных пакетов с помощью pip list.

    pip list
    

Создание новых файлов

  1. В текущем каталоге создайте новый файл с именем .env.

  2. В файле .env добавьте запись для строки подключения с именем SQL_CONNECTION_STRING. Замените пример фактическим значением строки подключения.

    SQL_CONNECTION_STRING="Server=<server_name>;Database={<database_name>};Encrypt=yes;TrustServerCertificate=no;Authentication=ActiveDirectoryInteractive"
    

    Подсказка

    Строка подключения, используемая здесь, в значительной степени зависит от типа базы данных SQL, к которой вы подключаетесь. Если вы подключаетесь к базе данных SQL Azure или базе данных SQL в Fabric, используйте строку подключения ODBC на вкладке строк подключения. Возможно, вам потребуется настроить тип проверки подлинности в зависимости от вашего сценария. Дополнительные сведения о строках подключения и их синтаксисе см. в разделе DSN и ключевые слова строки подключения и атрибуты.

  3. Создайте файл sqltest.py в текстовом редакторе.

  4. Добавьте следующий код.

    from os import getenv
    from dotenv import load_dotenv
    from mssql_python import connect
    
    load_dotenv()
    
    with connect(getenv("SQL_CONNECTION_STRING")) as conn:
        with conn.cursor() as cursor:
            cursor.execute("SELECT TOP 3 name, collation_name FROM sys.databases")
            rows = cursor.fetchall()
            for row in rows:
                print(row.name, row.collation_name)
    

Выполнение кода

  1. В командной строке выполните следующую команду:

    python sqltest.py
    
  2. Убедитесь, что возвращены базы данных и их параметры сортировки, и закройте командное окно.

    Если появится сообщение об ошибке:

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

    • Если вы запускаете код из локальной среды, убедитесь, что брандмауэр ресурса Azure, к которому вы пытаетесь получить доступ, настроен для разрешения доступа с IP-адреса вашей среды.