Содержание

Шаг 3. Подключение к SQL с помощью pyodbc — Python driver for SQL Server

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 2 мин

Этот пример является подтверждением концепции. Пример кода упрощен для ясности и для него не гарантируется соблюдение рекомендаций корпорации Майкрософт.

Чтобы приступить к работе, выполните следующий пример скрипта. Создайте файл с именем test.py и добавляйте фрагменты кода по ходу работы.

> python test.py

Подключение

import pyodbc 
# Some other example server values are
# server = 'localhost\sqlexpress' # for a named instance
# server = 'myserver,port' # to specify an alternate port
server = 'tcp:myserver.database.windows.net' 
database = 'mydb' 
username = 'myusername' 
password = 'mypassword' 
# ENCRYPT defaults to yes starting in ODBC Driver 18. It's good to always specify ENCRYPT=yes on the client side to avoid MITM attacks.
cnxn = pyodbc.connect('DRIVER={ODBC Driver 18 for SQL Server};SERVER='+server+';DATABASE='+database+';ENCRYPT=yes;UID='+username+';PWD='+ password)
cursor = cnxn.cursor()

Выполнение запроса

Функция cursor.execute может использоваться для извлечения результирующего набора из запроса к базе данных SQL. Эта функция принимает запрос и возвращает результирующий набор, по которому может быть выполнена итерация с использованием cursor.fetchone().

#Sample select query
cursor.execute("SELECT @@version;") 
row = cursor.fetchone() 
while row: 
    print(row[0])
    row = cursor.fetchone()

Вставка строки

В этом примере вы узнаете, как безопасно выполнить инструкцию INSERT и передать параметры. Параметры защищают приложение от внедрения кода SQL.

#Sample insert query
count = cursor.execute("""
INSERT INTO SalesLT.Product (Name, ProductNumber, StandardCost, ListPrice, SellStartDate) 
VALUES (?,?,?,?,?)""",
'SQL Server Express New 20', 'SQLEXPRESS New 20', 0, 0, CURRENT_TIMESTAMP).rowcount
cnxn.commit()
print('Rows inserted: ' + str(count))

Azure Active Directory и строка подключения

pyODBC использует драйвер Microsoft ODBC для SQL Server. Если ваша версия драйвера ODBC — 17.1 или более поздняя, интерактивный режим Azure Active Directory драйвера ODBC можно использовать через pyODBC.

Этот интерактивный параметр работает, если Python и pyODBC разрешают драйверу ODBC отображать диалоговое окно. Этот параметр доступен только в ОС Windows.

Пример строки подключения для использования с интерактивной проверкой подлинности Azure Active Directory

В следующем примере представлена строка подключения ODBC, определяющая интерактивную проверку подлинности Azure Active Directory.

server=Server;database=Database;UID=UserName;Authentication=ActiveDirectoryInteractive;Encrypt=yes;

См. сведения о параметрах проверки подлинности драйвера ODBC в руководстве по использованию Azure Active Directory с драйвером ODBC.

Дальнейшие действия

Дополнительную информацию можно найти в Центре разработчика Python.

Шаг 3. Подключение к SQL с помощью pymssql — Python driver for SQL Server

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 2 мин

Установка драйвера pyodbc для PythonУстановка драйвера pymssql для Python

Этот пример следует рассматривать только как подтверждение концепции. Пример кода упрощен для ясности и он не обязательно рекомендуется к использованию корпорацией Майкрософт.

Шаг 1. Подключение

Функция pymssql.connect используется для подключения к базе данных SQL.

    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  

Шаг 2. Выполнение запроса

Функция cursor.execute может использоваться для извлечения результирующего набора из запроса к базе данных SQL. Эта функция фактически принимает любой запрос и возвращает результирующий набор, по которому может быть выполнена итерация с использованием cursor.fetchone().

    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  
    cursor = conn.cursor()  
    cursor.execute('SELECT c.CustomerID, c.CompanyName,COUNT(soh.SalesOrderID) AS OrderCount FROM SalesLT. Customer AS c LEFT OUTER JOIN SalesLT.SalesOrderHeader AS soh ON c.CustomerID = soh.CustomerID GROUP BY c.CustomerID, c.CompanyName ORDER BY OrderCount DESC;')  
    row = cursor.fetchone()  
    while row:  
        print(str(row[0]) + " " + str(row[1]) + " " + str(row[2]))     
        row = cursor.fetchone()  

Шаг 3. Вставка строки

В этом примере вы узнаете, как безопасно выполнить инструкцию INSERT и передать параметры. Передача параметров в виде значений защищает приложение от внедрения SQL-кода.

    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  
    cursor = conn.cursor()  
    cursor.execute("INSERT SalesLT.Product (Name, ProductNumber, StandardCost, ListPrice, SellStartDate) OUTPUT INSERTED.ProductID VALUES ('SQL Server Express', 'SQLEXPRESS', 0, 0, CURRENT_TIMESTAMP)")  
    row = cursor.fetchone()  
    while row:  
        print("Inserted Product ID : " +str(row[0]))
        row = cursor.
fetchone() conn.commit() conn.close()

Шаг 4. Откат транзакции

Этот пример кода демонстрирует использование транзакций, в которых можно:

  • начать транзакцию;
  • вставить строку данных;
  • откатить транзакцию для отмены вставки.
    import pymssql  
    conn = pymssql.connect(server='yourserver.database.windows.net', user='yourusername@yourserver', password='yourpassword', database='AdventureWorks')  
    cursor = conn.cursor()  
    cursor.execute("BEGIN TRANSACTION")  
    cursor.execute("INSERT SalesLT.Product (Name, ProductNumber, StandardCost, ListPrice, SellStartDate) OUTPUT INSERTED.ProductID VALUES ('SQL Server Express New', 'SQLEXPRESS New', 0, 0, CURRENT_TIMESTAMP)")  
    conn.rollback()  
    conn.close()

Дальнейшие действия

Дополнительную информацию можно найти в Центре разработчика Python.

Python SQL Server Интеграция с помощью Pyodbc: 5 простых шагов

Сегодня большинство новых разработчиков предпочитают Python другим языкам программирования из-за его простых, но продвинутых функций. Разработка приложений, машинное обучение, искусственный интеллект, игры и многие другие области продвигают использование среды Python для создания новых продуктов. Более того, предприятия по всему миру используют богатые библиотеки Python для автоматизации своих повседневных задач и повышения эффективности.

Table of Contents

Microsoft SQL Server — лучший выбор в качестве решения RDBMS (система управления реляционными базами данных) сегодня почти в каждой компании. Его простые в использовании интеграции и надежная обработка данных побудили многие организации полагаться на его услуги для решения своих важных задач. В последнее время эти предприятия ищут способы объединить это решение RDBMS с языком программирования Python, чтобы еще больше повысить его удобство использования.

В этой статье вы познакомитесь с серверами Python и SQL и перечислите их основные функции. В нем также будет подробно описан пошаговый подход к созданию Python SQL Server Integration для вашего бизнеса. Прочтите, чтобы освоить эти шаги и узнать о преимуществах подключения Python к вашим серверам SQL!

Предварительные условия

Чтобы настроить интеграцию Python с SQL Server, вы должны иметь:

  • Практические знания языка программирования Python.
  • Учетная запись Microsoft SQL.
  • Настройка среды Python.

Что такое Python?

Image Source

Python — универсальный язык программирования общего назначения. Небольшая кривая обучения в сочетании с надежностью сделали его сегодня одним из самых популярных языков программирования. Это выбор разработчиков для разработки веб-сайтов и программного обеспечения, автоматизации, анализа данных, визуализации данных и многого другого. Более того, его простой синтаксис позволяет бухгалтерам и ученым использовать его для повседневных задач. Язык программирования Python служит ключевым неотъемлемым инструментом в области науки о данных для выполнения сложных статистических расчетов, создания алгоритмов машинного обучения и т.  д. 

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

Получите бесплатную пробную версию прямо сейчас!

Ключевые особенности языка программирования Python

Источник изображения

Следующие функции ответственны за сегодняшнюю популярность языка программирования Python:

  • Подходит для начинающих : Язык программирования Python предлагает удобную среду для разработчиков. Его простой рабочий процесс подходит для всех, и он привлекает кодеров начального уровня. Более того, вы можете бесплатно использовать и распространять его коды с открытым исходным кодом в коммерческих целях.
  • Надежные приложения : Его простой синтаксис работает на естественном человекочитаемом языке, что делает его идеальным выбором для проектов на языке программирования Python, который быстрее по сравнению с другими языками программирования. Кроме того, его универсальный характер делает его идеальным выбором для проектов веб-разработки и машинного обучения.
  • Большие сообщества : из-за огромной популярности Python в Интернете доступно огромное активное сообщество программистов, которые вносят свой вклад в модули и библиотеки этого языка. Более того, это обширное сообщество поддержки готово помочь, если вы или любой другой программист застрянете в проблеме программирования. Вы можете легко получить предложения и решения, опубликовав свою проблему на этих страницах сообщества.

Вы можете узнать больше о языке программирования Python, посетив здесь.

Что такое SQL Server?

Image Source

Microsoft SQL Server — это широко используемая система управления реляционными базами данных (RDBMS), предназначенная для предоставления пользователям возможности хранения и поиска данных в соответствии с их требованиями. Microsoft SQL Server обеспечивает широкий спектр функций, благодаря которым обработка транзакций и анализ данных сегодня популярны среди предприятий. Кроме того, Microsoft SQL Server считается одной из трех ведущих технологий баз данных наряду с Oracle Database и IBM DB2.

Помимо ANSI SQL, популярного языка структурированных запросов (SQL), Microsoft SQL Server содержит собственную версию SQL, называемую Transact SQL (T-SQL). T-SQL поддерживает дополнительные функции, позволяющие выполнять такие операции, как объявление переменных, обработка исключений и другие операции. Кроме того, ваша работа с Microsoft SQL Server упрощается благодаря ключевому интерфейсному инструменту под названием SQL Server Management Studio (SSMS). Он автоматизирует большинство сложных задач и обеспечивает бесперебойную работу.

Основные возможности Microsoft SQL Server

Ниже перечислены основные функции Microsoft SQL Server:

  • Ускоренное восстановление данных: Microsoft SQL Server имеет исключительный механизм восстановления и отката, который автоматически включается при сбое сервера. В процессе восстановления базы данных используются журналы транзакций, что значительно сокращает время задержки.
  • Усовершенствованное шифрование: Учитывая, что предприятия хранят секретную информацию в базах данных, обеспечение конфиденциальности имеет важное значение для поставщиков баз данных. С 2016 года Microsoft SQL Server использует новую технологию шифрования, известную как AlwaysEncrypted, которая предлагает прозрачное шифрование столбцов без предоставления администраторам базы данных какого-либо доступа к ключам дешифрования.
  • Интеллектуальная обработка запросов: Microsoft SQL Server содержит встроенный оптимизатор запросов, который работает по плану выполнения. Этот план был оптимизирован для повышения производительности с точки зрения предоставления динамической памяти, пакетного режима, отложенной компиляции табличных переменных и т. д.
  • Advanced Analytics: согласно вашим требованиям. Кроме того, вы можете использовать службу анализа Microsoft SQL Server (SSAS), чтобы преуспеть в задачах интеллектуального анализа данных.

Hevo Data, конвейер данных без кода, помогает загружать данные из любого источника данных, такого как Microsoft SQL , приложения SaaS, облачное хранилище, SDK и потоковые службы, и упрощает процесс ETL. Он поддерживает более 100 источников данных и загружает данные в нужное хранилище данных, обогащает данные и преобразует их в форму, готовую для анализа, без написания единой строки кода.

Полностью автоматизированный конвейер обеспечивает доставку данных в режиме реального времени без каких-либо потерь от источника к месту назначения. Его отказоустойчивая и масштабируемая архитектура гарантирует, что данные обрабатываются безопасным, согласованным образом с нулевой потерей данных и поддерживает различные формы данных. Предлагаемые решения совместимы и работают с различными инструментами бизнес-аналитики (BI).

Начните работу с Hevo бесплатно

Узнайте, почему Hevo является лучшим:

  • Безопасность : Hevo имеет отказоустойчивую архитектуру, которая гарантирует, что данные обрабатываются безопасным, согласованным образом без потери данных.
  • Управление схемой : Hevo снимает утомительную задачу управления схемой и автоматически определяет схему входящих данных и сопоставляет ее со схемой назначения.
  • Минимальное обучение : Hevo с его простым и интерактивным пользовательским интерфейсом чрезвычайно прост для новых клиентов в работе и выполнении операций.
  • Hevo создан для масштабирования : По мере роста количества источников и объема ваших данных Hevo масштабируется горизонтально, обрабатывая миллионы записей в минуту с очень небольшой задержкой.
  • Добавочная загрузка данных : Hevo позволяет передавать измененные данные в режиме реального времени. Это обеспечивает эффективное использование полосы пропускания на обоих концах.
  • Онлайн-поддержка : команда Hevo доступна круглосуточно, чтобы предоставить своим клиентам исключительную поддержку через чат, электронную почту и звонки в службу поддержки.
  • Мониторинг в реальном времени : Hevo позволяет отслеживать поток данных и проверять, где находятся ваши данные в определенный момент времени.

Зарегистрируйтесь здесь, чтобы получить 14-дневную бесплатную пробную версию!

Действия по настройке интеграции Python SQL Server с использованием Pyodbc

Этот метод использует библиотеку « pyodbc » для настройки интеграции Python SQL Server. Библиотека pyodbc предоставляет разработчикам Python простой доступ к базам данных ODBC (Open Database Connectivity). Таким образом, вы можете реализовать описанный в этом разделе метод для настройки интеграции Python ODBC с любыми платформами, такими как MS Access, MySQL, IBM Db2 и т. д. 

Следующие шаги позволят вам легко настроить интеграцию Python с SQL Server:

  • Шаг 1 : Установите соединение с SQL Server
  • Шаг 2: Запустите SQL-запрос
  • Шаг 3: Извлеките результаты запроса в Python
  • Шаг 4. Применение изменений в SQL Server
  • Шаг 5. Автоматизация работы Python SQL Server

Шаг 1. Установка соединения Python SQL Server соединение между Python и сервером SQL с использованием

pyodbc.connect и передать строку подключения. Строка подключения Python MsSQL будет определять драйвер СУБД, параметры подключения, сервер и конкретную базу данных.

Теперь, например, вы хотите подключиться к серверу USXXX00345,67800 и базе данных DB02 с помощью собственного клиента SQL Server 11.0.

Существует 2 способа установить это соединение Python SQL Server:

  • Подход 1 к настройке соединения Python SQL Server : Вы можете полагаться на доверенное внутреннее соединение, используя следующий код:
 cnxn_str = ("Драйвер = {Собственный клиент SQL Server 11.0};"
            "Сервер=USXXX00345,67800;"
            "База данных = DB02;"
            "Trusted_Connection=да;")
cnxn = pyodbc.
connect(cnxn_str)
  • Подход 2 к настройке соединения Python SQL Server : у вас нет доверенного внутреннего соединения и вы хотите настроить необходимое соединение SQL Server с помощью SQL Server Management Studio (SSMS). ). Это потребует от вас ввести свое имя пользователя (скажем, Alex) и пароль (Alex123), как показано в следующем коде:
 cnxn_str = ("Драйвер = {Собственный клиент SQL Server 11.0};"
            "Сервер=USXXX00345,67800;"
            "База данных = DB02;"
            "UID=Алекс;"
            "PWD=Алекс123;")
cnxn = pyodbc.connect(cnxn_str) 

Теперь, когда установлено соединение с базой данных Python, вы можете выполнять SQL-запросы через Python.

Шаг 2: Запустите запрос SQL

Теперь каждый запрос, который вы будете выполнять на сервере SQL, будет включать инициализацию курсора и последовательность выполнения запроса. Кроме того, любые изменения, сделанные внутри SQL Server, также должны отражаться в Python (что описано в Шаге 3 интеграции Python с MS SQL Server).

Вы можете инициализировать курсор с помощью:

 cursor = cnxn.cursor() 

Теперь, если вы хотите выполнить запрос, вызовите этот объект курсора. Например, следующий запрос выберет первые 100 строк из ассоциации с именем таблицы SQL:

 cursor.execute("SELECT TOP(100) * FROM Associates") 

Этот запрос даст вам желаемые результаты, но не данные будут возвращены в Python. Чтобы убедиться, что ваши изменения SQL отражаются в Python, перейдите к следующему шагу интеграции Python с SQL Server.

Шаг 3. Извлечение результатов запроса в Python

Чтобы извлечь данные из SQL Server в Python, вам потребуется библиотека Pandas . Панды содержат функцию « read_sql », которая полезна для чтения данных из SQL в Python. Для read_sql требуется запрос, а также экземпляр соединения cnxn для извлечения данных следующим образом:

 data = pd.read_sql("SELECT TOP(100) * FROM Associates", cnxn) 

Это вернет фрейм данных, состоящий из первые 100 строк из вашей таблицы Associates.

Шаг 4: Применение изменений в SQL Server

Далее, если вы хотите изменить данные SQL, вы должны добавить еще один шаг в процесс выполнения запроса. Это связано с тем, что когда вы выполняете SQL-запросы, изменения сохраняются во временном пространстве, а не напрямую изменяют ваши сохраненные данные.

Чтобы сделать такие модификации постоянными, вы должны зафиксировать их . Например, если вы хотите объединить столбцы firstName и lastName, создайте столбец fullName, используя следующий код:

 курсор = cnxn.cursor()
# сначала изменить таблицу, добавив столбец
курсор.execute("ИЗМЕНИТЬ ТАБЛИЦУ связывает " +
               "ДОБАВИТЬ полное имя VARCHAR(20)")
# теперь обновите этот столбец, чтобы он содержал имя и фамилию
курсор.execute («ОБНОВЛЕНИЕ ассоциировано» +
               "SET полное имя = имя + " " + фамилия")
 

Даже после выполнения этого кода вы не найдете ни одного столбца fullName в своей базе данных Associate . Вам необходимо зафиксировать вышеуказанные изменения и сделать их постоянными с помощью следующей команды:

 cnxn.commit() 

Шаг 5. Автоматизация функционирования Python SQL Server

В приведенных выше шагах обсуждалось, как можно изменить данные SQL и извлечь их в Python или, в качестве альтернативы, сначала извлечь данные в Python, а затем выполнить манипуляции. Как только эта настройка будет готова, вы можете использовать интеграцию Python с SQL Server для автоматизации множества задач.

Например, вам может потребоваться ежедневная отчетность, которая включает в себя запрос новейшего пакета данных на сервере SQL, расчет основных статистических данных и отправку результатов руководству по электронной почте. Вы можете автоматизировать этот длительный процесс, используя интеграцию Python SQL Server следующим образом:0005

 # импорт для части данных SQL
импортировать pyodbc
из даты и времени импортировать дату и время, timedelta
импортировать панд как pd
# импорт для отправки электронной почты
из email. mime.text импортировать MIMEText
из email.mime.multipart импортировать MIMEMultipart
импорт smtplib
date = datetime.today() - timedelta(days=7) # получить дату 7 дней назад
date = date.strftime("%Y-%m-%d") # преобразовать в формат гггг-мм-дд
cnxn = pyodbc.connect(cnxn_str) # инициализируем соединение (предположим, что мы уже определили cnxn_str)
# создаем нашу строку запроса
запрос = ("ВЫБЕРИТЕ * ИЗ партнеров"
         f"ГДЕ дата присоединения > '{дата}'")
# выполнить запрос и прочитать в фрейме данных в Python
данные = pd.read_sql (запрос, cnxn)
del cnxn # закрыть соединение
# сделать несколько расчетов
средний_платеж = данные['платеж'].средний()
std_payment = данные['платеж'].std()
# получить максимальный платеж и информацию о продукте
max_vals = данные[['продукт', 'платеж']].sort_values(by=['платеж'], по возрастанию=ложь).iloc[0]
# написать сообщение электронной почты
txt = (f"Отчеты клиентов за период {дата} - {datetime.today().strftime('%Y-%m-%d')}.nn"
       f"Средняя сумма полученных платежей: {mean_payment}n"
       f"Стандартное отклонение сумм платежа: {std_payments}n"
       f"Максимальная сумма платежа {max_vals['payment']} "
       f"получено от продукта {max_vals['product']}. ")
# мы создадим сообщение, используя библиотеку электронной почты, и отправим его с помощью smtplib
msg = MIMEMMultipart()
msg['Subject'] = "Автоматический отчет клиента" # установить тему письма
msg.attach(MIMEText(txt)) # добавить текстовое содержимое
       
# будем отправлять через аутлук, сначала инициализируем подключение к почтовому серверу
smtp = smtplib.SMTP('smtp-mail.outlook.com', '587')
smtp.ehlo() # передаем привет серверу
smtp.starttls() # мы будем общаться, используя шифрование TLS
       
# войдите на сервер Outlook, используя общий адрес электронной почты и пароль
smtp.login('Алекс@outlook.com', 'Алекс123')
       
# отправить электронное письмо нашему боссу
smtp.sendmail('[email protected]', '[email protected]', msg.as_string())
       
# наконец отключаемся от почтового сервера
smtp.выход()
 

Этот код теперь извлечет данные за предыдущую неделю, рассчитает ваши ключевые показатели и отправит сводку на электронный адрес вашего начальника.

Вот оно! Ваша интеграция с Python SQL Server установлена ​​и успешно работает.

Преимущества интеграции Python с SQL Server

Настройка интеграции Python с SQL Server. Пришло время узнать о преимуществах, которые она может предоставить вашему бизнесу. Сочетание языка программирования Python с серверами SQL улучшит ваш бизнес следующими способами: 

  • Благодаря своей простоте язык программирования Python стал идеальным выбором для разработчиков для создания проектов ИИ. Таким образом, интеграция Python с SQL Server позволит этим разработчикам ИИ использовать функциональные возможности SQL Server непосредственно из своего кода Python. Это значительно упростит разработчикам встраивание анализа данных, функций искусственного интеллекта и функций машинного обучения в код существующего приложения.
  • Соединение с Python SQL Server обеспечивает значительное преимущество при разработке. Другие языки, такие как R, при интеграции с SQL Server улучшат только аналитический аспект программирования. Тем не менее, Python при использовании вместе с серверами SQL позволяет разработчикам гораздо проще выполнять потоковую передачу данных и операции в реальном времени.
  • Настройка интеграции Python SQL Server обеспечивает более быструю обработку данных по сравнению с использованием сетевой системы через TCP, HTTP и т. д. Это связано с тем, что она использует ресурсы локальной платформы, включая файловую систему, графический процессор и т. д., для построения в реальном времени интеграции и опирается на универсальные форматы данных, такие как JSON и XML.

Заключение

В этой статье вы познакомились с языком программирования Python и серверами SQL, а также с их уникальными функциями. Затем он предоставляет пошаговое руководство, с помощью которого вы можете легко настроить интеграцию с сервером Python SQL. В статье также обсуждались многочисленные преимущества, которые сочетание этих двух инструментов может дать вашему бизнесу. Прочитав эту статью, вы сможете легко реализовать интеграцию Python с SQL Server для своих баз данных.

Посетите наш веб-сайт, чтобы ознакомиться с Hevo

Теперь, чтобы выполнять SQL-запросы или выполнять анализ данных с данными SQL Server, вам сначала необходимо экспортировать эти данные в хранилище данных. Это потребует от вас создания сложных скриптов для разработки процессов ETL. Hevo Data может автоматизировать процесс передачи данных, что позволяет вам сосредоточиться на других аспектах вашего бизнеса, таких как аналитика, управление клиентами и т. д. Эта платформа позволяет передавать данные из более чем 100 различных источников, таких как 9.0003 Microsoft SQL в облачные хранилища данных, такие как Amazon Redshift , Snowflake, Google BigQuery и т. д. Это обеспечит вам беспроблемную работу и значительно облегчит вашу работу.

Хотите попробовать Hevo? Подпишитесь на 14-дневную бесплатную пробную версию и испытайте многофункциональный пакет Hevo из первых рук.

Поделитесь своим пониманием функции Python SQL Server Integration в комментариях ниже!

Шаг 3.

Подключение к SQL с помощью pyodbc — драйвер Python для SQL Server

Редактировать

Твиттер LinkedIn Фейсбук Электронная почта

  • Статья
  • 2 минуты на чтение

Этот пример является доказательством концепции. Образец кода упрощен для ясности и не обязательно отражает лучшие практики, рекомендованные корпорацией Майкрософт.

Для начала запустите следующий пример сценария. Создайте файл с именем test.py и добавляйте каждый фрагмент кода по мере необходимости.

 > Python test.py
 

Подключить

 Импорт pyodbc
# Некоторые другие примеры серверных значений:
# server = 'localhost\sqlexpress' # для именованного экземпляра
# server = 'myserver,port' # чтобы указать альтернативный порт
сервер = 'tcp: myserver. database.windows.net'
база данных = 'mydb'
имя пользователя = 'мое имя пользователя'
пароль = 'мой пароль'
# ENCRYPT по умолчанию имеет значение yes, начиная с драйвера ODBC 18. Хорошо всегда указывать ENCRYPT=yes на стороне клиента, чтобы избежать MITM-атак.
cnxn = pyodbc.connect('DRIVER={Драйвер ODBC 18 для SQL Server};SERVER='+server+';DATABASE='+database+';ENCRYPT=yes;UID='+username+';PWD='+ пароль)
курсор = cnxn.курсор()
 

Выполнить запрос

Функция cursor.execute может использоваться для извлечения набора результатов из запроса к базе данных SQL. Эта функция принимает запрос и возвращает набор результатов, который можно повторить с помощью cursor.fetchone().

 #Пример запроса выбора
курсор.выполнить("ВЫБЕРИТЕ @@версию;")
строка = курсор.fetchone()
пока ряд:
    печать (строка [0])
    строка = курсор.fetchone()
 

Вставка строки

В этом примере показано, как безопасно выполнить инструкцию INSERT и передать параметры. Параметры защищают ваше приложение от SQL-инъекций.