Sdílet prostřednictvím


Vložení dat z tabulky SQL do datového rámce Python pandas

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLDatabáze SQL v Microsoft Fabric

Tento článek popisuje, jak vložit data SQL do datového rámce pandas pomocí balíčku pyodbc v Pythonu. Řádky a sloupce dat obsažených v datovém rámci je možné použít k dalšímu zkoumání dat.

Prerequisites

Ověření obnovené databáze

Obnovenou databázi můžete ověřit dotazem na tabulku Person.CountryRegion :

USE AdventureWorks;
SELECT * FROM Person.CountryRegion;

Instalace balíčků Pythonu

Stáhněte a nainstalujte Azure Data Studio.

Nainstalujte následující balíčky Pythonu:

  • pyodbc
  • pandas

Instalace těchto balíčků:

  1. V poznámkovém bloku Azure Data Studio vyberte Spravovat balíčky.
  2. V podokně Spravovat balíčky vyberte kartu Přidat novou .
  3. Pro každý z následujících balíčků zadejte název balíčku, klepněte na tlačítko Hledat a potom klepněte na tlačítko Nainstalovat.

Vložení dat

Pomocí následujícího skriptu vyberte data z tabulky Person.CountryRegion a vložte je do datového rámce. Upravte proměnné připojovacího řetězce: server, databáze, uživatelské jméno a heslo pro připojení k SQL.

Vytvoření nového poznámkového bloku:

  1. V Nástroji Azure Data Studio vyberte Soubor a vyberte Nový poznámkový blok.
  2. V poznámkovém bloku vyberte jádro Python3 a vyberte +kód.
  3. Vložte kód do poznámkového bloku a vyberte Spustit vše.
import pyodbc
import pandas as pd
# Some other example server values are
# server = 'localhost\sqlexpress' # for a named instance
# server = 'myserver,port' # to specify an alternate port
server = 'servername' 
database = 'AdventureWorks' 
username = 'yourusername' 
password = 'databasename'  
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
# select 26 rows from SQL table to insert in dataframe.
query = "SELECT [CountryRegionCode], [Name] FROM Person.CountryRegion;"
df = pd.read_sql(query, cnxn)
print(df.head(26))

Output

Příkaz print v předchozím skriptu zobrazí řádky dat z datového pandas rámce df.

CountryRegionCode                 Name
0                 AF          Afghanistan
1                 AL              Albania
2                 DZ              Algeria
3                 AS       American Samoa
4                 AD              Andorra
5                 AO               Angola
6                 AI             Anguilla
7                 AQ           Antarctica
8                 AG  Antigua and Barbuda
9                 AR            Argentina
10                AM              Armenia
11                AW                Aruba
12                AU            Australia
13                AT              Austria
14                AZ           Azerbaijan
15                BS         Bahamas, The
16                BH              Bahrain
17                BD           Bangladesh
18                BB             Barbados
19                BY              Belarus
20                BE              Belgium
21                BZ               Belize
22                BJ                Benin
23                BM              Bermuda
24                BT               Bhutan
25                BO              Bolivia

Další kroky