Извлечние данных

 
Для начала импортируйте необходимые библиотеки - Pandas для работы с таблицами и Pymssql для работы с СУБД MsSql.
import pandas as pd
import pymssql
Далее нужно подключиться к базе данных с помощью pymssql.connect().
con = pymssql.connect(server='server',
                       user='user',
                       password='password',
                       database='database')
cur = con.cursor()
Если вы не знаете точное название таблицы, которая вам нужна, можно получить список доступных таблиц, используя следующий скрипт.
cur.execute('SELECT * FROM INFORMATION_SCHEMA.TABLES')
tables = cur.fetchall()
tables
Чтобы выгрузить таблицу из базы данных можно использовать следующий шаблон, в котором вместо user и TableName нужно вписать имя пользователя, указанное в параметрах подключения к СУБД и название нужной вам таблицы из списка доступных таблиц соответственно:
cur.execute("SELECT * FROM [database].[dbo].[TableName]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='TableName'")
columns=cur.fetchall()
Пример получения таблицы со списком рисков:
cur.execute("SELECT * FROM [database].[dbo].[Risks]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Risks'")
columns=cur.fetchall()
risks=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со списком последствий:
cur.execute("SELECT * FROM [database].[dbo].[Consequences]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Consequences'")
columns=cur.fetchall()
consequences=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со списком контрольных механизмов:
cur.execute("SELECT * FROM [database].[dbo].[Controls]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Controls'")
columns=cur.fetchall()
controls=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со списком смягчений:
cur.execute("SELECT * FROM [database].[dbo].[Mitigations]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Mitigations'")
columns=cur.fetchall()
mitigations=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со списком категорий:
cur.execute("SELECT * FROM [database].[dbo].[Categories]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Categories'")
columns=cur.fetchall()
categories=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со списком статусов:
cur.execute("SELECT * FROM [database].[dbo].[StatusTypes]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='StatusTypes'")
columns=cur.fetchall()
status=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со стратегическими целями:
cur.execute("SELECT * FROM [database].[dbo].[Goals]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Goals'")
columns=cur.fetchall()
goals=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы с критериями успеха цели:
cur.execute("SELECT * FROM [database].[dbo].[CriteriaTypes]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Tactics'")
columns=cur.fetchall()
criteria_types=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])
Пример получения таблицы со списком тактик:
cur.execute("SELECT * FROM [database].[dbo].[Tactics]")
tupples = cur.fetchall()
cur.execute("SELECT COLUMN_NAME AS [columns] FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name='Tactics'")
columns=cur.fetchall()
tactics=pd.DataFrame(tupples, columns=pd.DataFrame(columns)[0])