Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:Azure SQL Database
Tento článek pomáhá vývojářům jazyka C a C++ připojit se ke službě Azure SQL Database.
Požadavky
K dokončení kroků v této příručce potřebujete následující:
- Aktivní účet Azure Pokud žádný nemáte, můžete si zaregistrovat bezplatnou zkušební verzi Azure.
- Visual Studio. Abyste mohli sestavit a spustit tuto ukázku, musíte nainstalovat součásti jazyka C++.
- Vývoj pro Visual Studio pro Linux Pokud vyvíjíte v Linuxu, musíte také nainstalovat rozšíření Visual Studio Linux.
Technologie přístupu k datům: ODBC a OLE DB
K Azure SQL Database se v současné době můžete připojit dvěma způsoby: ODBC (připojení k open database) a OLE DB (propojování objektů a vkládání databáze). V posledních letech microsoft v souladu s rozhraním ODBC pro nativní přístup k relačním datům. Rozhraní ODBC je mnohem rychlejší než OLE DB. Jediným upozorněním je, že rozhraní ODBC používá staré rozhraní API ve stylu jazyka C.
Vytvoření služby Azure SQL Database
Na stránce Začínáme se dozvíte, jak vytvořit ukázkovou databázi.
Získání připojovací řetězec
Po zřízení služby Azure SQL Database je potřeba provést následující kroky, abyste zjistili informace o připojení a přidali IP adresu klienta pro přístup k bráně firewall.
Na webu Azure Portal přejděte k připojovacím řetězcům služby Azure SQL Database pomocí části Zobrazit připojovací řetězce databáze uvedené v části Přehled vaší databáze:
Vyberte kartu ODBC .
Zkopírujte obsah řetězce ODBC (zahrnuje Node.js) [ověřování SQL]. Tento řetězec použijeme později pro připojení z překladače příkazového řádku ODBC jazyka C++. Tento řetězec obsahuje podrobnosti, jako jsou ovladače, server a další parametry připojení k databázi.
Přidání IP adresy do brány firewall
- Přejděte na logický server Azure SQL Database. Na stránce Přehled databáze SQL vyberte odkaz pro název serveru nebo na něj přejděte prostřednictvím vyhledávání na webu Azure Portal.
- V části Zabezpečení vyberte Sítě.
- Na kartě Veřejný přístup vyberte Vybrané sítě , pokud ještě nejsou.
- Přidejte ip adresu klienta do brány firewall pomocí těchto kroků , abychom měli jistotu, že můžeme navázat úspěšné připojení. Vyberte Přidat adresu IPv4 klienta nebo přidejte pravidlo firewallu.
V tuto chvíli jste nakonfigurovali službu Azure SQL Database a jste připraveni se připojit z kódu C++ z pracovní stanice.
Návod
Přidání IP adresy pracovní stanice klienta do brány firewall veřejné sítě je přijatelné pro dočasné nastavení testovacího prostředí nebo učení, ale pro podnikové řešení nebo dlouhodobý projekt, postupujte podle těchto osvědčených postupů zabezpečení:
- Nastavte možnost Povolit službám a prostředkům Azure přístup k tomuto serveru na hodnotu VYPNUTO na úrovni serveru.
- Použijte koncové body služby VNet a pravidla brány firewall VNet.
- Použijte Službu Private Link.
Připojení z aplikace C/C++ systému Windows
Pomocí této ukázky, která se sestavuje pomocí sady Visual Studio, se můžete snadno připojit ke službě Azure SQL Database pomocí rozhraní ODBC ve Windows. Ukázka implementuje interpret příkazového řádku ODBC, který se dá použít k připojení k naší službě Azure SQL Database. Tato ukázka přebírá soubor názvu zdroje databáze (DSN) jako argument příkazového řádku nebo podrobný připojovací řetězec, který jsme zkopírovali dříve z webu Azure Portal. Otevřete stránku vlastností pro tento projekt a vložte připojovací řetězec jako argument příkazu, jak je znázorněno tady:
Ujistěte se, že jako součást této databáze připojovací řetězec zadáte správné podrobnosti ověřování pro vaši databázi.
Spusťte aplikaci a sestavte ji. Mělo by se zobrazit následující okno, které ověřuje úspěšné připojení. Můžete dokonce spustit některé základní příkazy SQL, jako CREATE TABLE, abyste ověřili připojení k databázi:
Případně můžete vytvořit soubor DSN pomocí průvodce, který se spustí, když nejsou zadané žádné argumenty příkazu. Doporučujeme vyzkoušet i tuto možnost. Tento soubor DSN můžete použít pro automatizaci a ochranu nastavení ověřování:
Gratulujeme! Nyní jste se úspěšně připojili k Azure SQL pomocí C++ a ODBC ve Windows. Můžete pokračovat ve čtení a dělat to samé i pro platformu Linux.
Připojení z aplikace C/C++ pro Linux
V sadě Visual Studio můžete vyvíjet linuxové aplikace C++. Další informace najdete v následujícím blogu: Visual C++ for Linux Development.
K sestavení pro Linux potřebujete vzdálený počítač, na kterém běží distribuce Linuxu. Pokud ho nemáte k dispozici, můžete si ho rychle nastavit pomocí virtuálních počítačů Azure s Linuxem a různými metodami nasazení.
Tato příručka předpokládá, že máte nastavenou distribuci Ubuntu 16.04 Linux. Postup platí také pro Ubuntu 15.10, Red Hat 6 a Red Hat 7.
Následující kroky nainstalují knihovny potřebné pro SQL a ODBC pro distribuci:
sudo su
sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/mssql-ubuntu-test/ xenial main" > /etc/apt/sources.list.d/mssqlpreview.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
apt-get update
apt-get install msodbcsql
apt-get install unixodbc-dev-utf16 #this step is optional but recommended*
Spusťte Visual Studio. V části Nástroje ->Možnosti ->Cross Platform ->Správce připojení přidejte připojení k vašemu Linuxovému serveru:
Po vytvoření připojení přes SSH vytvořte prázdnou šablonu projektu (Linux):
Potom můžete přidat nový zdrojový soubor jazyka C a nahradit ho tímto obsahem. Pomocí rozhraní API SQLAllocHandleODBC , SQLSetConnectAttra SQLDriverConnect, byste měli být schopni inicializovat a navázat připojení k databázi.
Stejně jako u ukázky rozhraní ODBC pro Windows je potřeba volání SQLDriverConnect nahradit podrobnostmi z parametrů připojovacího řetězce databáze, které jste dříve zkopírovali z portálu Azure.
retcode = SQLDriverConnect(
hdbc, NULL, "Driver=ODBC Driver 13 for SQL"
"Server;Server=<yourserver>;Uid=<yourusername>;Pwd="
"<password>;database=<yourdatabase>",
SQL_NTS, outstr, sizeof(outstr), &outstrlen, SQL_DRIVER_NOPROMPT);
Poslední věcí, kterou je potřeba udělat před kompilací, je přidání odbc jako závislosti knihovny:
Aplikaci spustíte tak, že v nabídce Ladění vyvoláte konzolu Linuxu:
Pokud vaše připojení proběhlo úspěšně, měli byste vidět aktuální název databáze vytištěný v konzole linuxu:
Gratulujeme! Průvodce jste úspěšně dokončili a teď se můžete připojit ke službě Azure SQL Database z C++ na platformách Windows a Linux.
Získání kompletního řešení kurzu jazyka C/C++
Řešení, které obsahuje všechny ukázky, najdete GetStarted v tomto článku na GitHubu:
- Ukázka ROZHRANÍ ODBC C++ pro Windows, stažení ukázky ROZHRANÍ ODBC pro Windows C++ pro připojení k Azure SQL
- Ukázka ODBC C++ Linuxu, stažení ukázky ODBC pro Linux C++ pro připojení k Azure SQL
Související obsah
- Přehled vývoje aplikací – Azure SQL Database a Azure SQL Managed Instance
- Referenční
rozhraní ODBC API - vzory tenantů víceklientské databáze SaaS
- možnosti služby SQL Database