Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:Azure SQL Database
Ez a cikk segít a C és C++ fejlesztőknek az Azure SQL Database-hez való csatlakozásban.
Előfeltételek
Az útmutató lépéseinek elvégzéséhez a következőkre van szüksége:
- Aktív Azure-fiók. Ha nem rendelkezik ilyen szolgáltatással, regisztrálhat egy ingyenes Azure-próbaverzióra.
- Visual Studio. A minta létrehozásához és futtatásához telepítenie kell a C++ nyelvi összetevőket.
- Visual Studio Linux-fejlesztés. Ha Linuxon fejleszt, telepítenie kell a Visual Studio Linux-bővítményt is.
Adathozzáférési technológiák: ODBC és OLE DB
Jelenleg kétféleképpen lehet csatlakozni az Azure SQL Database-hez: ODBC (Open Database Connectivity) és OLE DB (Object Linking and Embedding database). Az elmúlt években a Microsoft az ODBC-hez igazodott a natív relációs adathozzáférés érdekében. Az ODBC sokkal gyorsabb, mint az OLE DB. Itt az egyetlen kikötés, hogy az ODBC egy régi C-stílusú API-t használ.
Az Azure SQL Database-adatbázis létrehozása
Tekintse meg az első lépéseket ismertető oldalt , amelyből megtudhatja, hogyan hozhat létre mintaadatbázist.
Kapcsolati sztring lekérése
Az Azure SQL Database kiépítése után a következő lépéseket kell végrehajtania a kapcsolati adatok meghatározásához, és hozzá kell adnia az ügyfél IP-címét a tűzfalhoz való hozzáféréshez.
Az Azure portálon lépjen az Azure SQL Database kapcsolati karakterláncaira az Áttekintés szakaszban található kapcsolati karakterláncok megjelenítése használatával:
Válassza az ODBC lapot.
Másolja ki az ODBC (Beleértve a Node.js) [SQL authentication] karakterlánc tartalmát. Ezt a sztringet később használjuk a C++ ODBC parancssori értelmezőnkből való csatlakozáshoz. Ez a sztring olyan részleteket tartalmaz, mint az illesztőprogram, a kiszolgáló és más adatbázis-kapcsolati paraméterek.
IP-cím hozzáadása a tűzfalhoz
- Lépjen az Azure SQL Database logikai kiszolgálóra. Válassza ki a kiszolgáló nevének hivatkozását az SQL-adatbázis Áttekintés lapján, vagy navigáljon rá az Azure Portal keresésével.
- A Biztonságiterületen válassza a Hálózatkezelésilehetőséget.
- A Nyilvános hozzáférés lapon válassza a Kijelölt hálózatok lehetőséget, ha még nem tette meg.
- Adja hozzá az ügyfél IP-címét a tűzfalhoz az alábbi lépésekkel , hogy biztosan létre tudjunk hozni egy sikeres kapcsolatot. Válassza az Ügyfél IPv4-címének hozzáadása vagy tűzfalszabály hozzáadása lehetőséget.
Mostanra konfigurálta az Azure SQL Database-t, és készen áll a csatlakozásra C++ kódból a munkaállomásáról.
Jótanács
Az ügyfél munkaállomásÁNAK IP-címének nyilvános hálózati tűzfalhoz való hozzáadása elfogadható egy ideiglenes tesztkörnyezet vagy tanulási beállítás esetében, de vállalati megoldáshoz vagy hosszú élettartamú projekthez kövesse az alábbi ajánlott biztonsági eljárásokat:
- Kapcsolja ki a kiszolgáló szintjén a „Azure-szolgáltatások és -erőforrások hozzáférhetnek a kiszolgálóhoz” beállítást.
- Használjon virtuális hálózati szolgáltatásvégpontokat és virtuális hálózati tűzfalszabályokat.
- Privát hivatkozás használata.
Csatlakozás Windows C/C++ alkalmazásból
A Visual Studióval készült minta használatával egyszerűen csatlakozhat az Azure SQL Database-hez a Windows ODBC használatával . A minta egy ODBC parancssori értelmezőt implementál, amely az Azure SQL Database-hez való csatlakozáshoz használható. Ez a minta egy adatbázis-forrásnevet (DSN) tartalmazó fájlt használ parancssori argumentumként, vagy a korábban az Azure portálról másolt bővebb kapcsolati karakterláncot. Hozza létre a projekt tulajdonságoldalát, és illessze be a kapcsolati sztringet parancsargumentumként az itt látható módon:
Győződjön meg arról, hogy az adatbázis megfelelő hitelesítési adatait adja meg az adatbázis kapcsolati sztringjének részeként.
Indítsa el az alkalmazást az összeállításhoz. Az alábbi ablakban láthatja, hogy a kapcsolat sikeres volt. Néhány alapvető SQL-parancsot is futtathat, például CREATE TABLE az adatbázis-kapcsolat ellenőrzéséhez:
Másik lehetőségként létrehozhat egy DSN-fájlt a varázslóval, amely akkor indul el, ha nincsenek megadva parancsargumentumok. Javasoljuk, hogy ezt a lehetőséget is próbálja ki. Ezt a DSN-fájlt az automatizáláshoz és a hitelesítési beállítások védelméhez használhatja:
Gratulálok! Most sikeresen csatlakozott az Azure SQL-hez a C++ és az ODBC használatával Windows rendszeren. Folytathatja az olvasást, hogy ugyanezt tegye a Linux platformon is.
Csatlakozás Linux C/C++ alkalmazásból
C++ Linux-alkalmazásokat fejleszthet a Visual Studióban. További információért tekintse át a következő blogot: Visual C++ for Linux Development.
Linuxra való buildeléshez egy távoli gépre van szükség, amelyen fut a Linux-disztribúció. Ha nem rendelkezik elérhetővel, gyorsan beállíthat egyet Linux Azure-beli virtuális gépek és különféle üzembe helyezési módszerek használatával.
Ez az útmutató feltételezi, hogy Ubuntu 16.04 Linux-disztribúció van beállítva. A lépések az Ubuntu 15.10, a Red Hat 6 és a Red Hat 7 rendszerre is érvényesek.
Az alábbi lépésekben telepítse a disztribúcióhoz szükséges SQL- és ODBC-kódtárakat:
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*
Indítsd el a Visual Studiót. Az Eszközök –>Beállítások –>Cross Platform–>Kapcsolatkezelő területen adjon hozzá egy kapcsolatot a Linux-géphez:
Miután létrejött a kapcsolat az SSH-n keresztül, hozzon létre egy Üres projekt (Linux) sablont:
Ezután hozzáadhat egy új C-forrásfájlt, és az alábbi tartalommal lecserélheti. Az ODBC API-k SQLAllocHandle, SQLSetConnectAttr és SQLDriverConnect használatával képesnek kellene lennie inicializálni és létrehozni egy kapcsolatot az adatbázisához.
A Windows ODBC-mintához hasonlóan a SQLDriverConnect hívást is le kell cserélnie az azure portalról korábban másolt adatbázis-kapcsolati sztring paramétereinek részleteire.
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);
A fordítás előtt az utolsó teendő az odbc könyvtárfüggőségként való hozzáadása:
Az alkalmazás elindításához nyissa meg a Linux-konzolt a Hibakeresés menüből:
Ha a kapcsolat sikeres volt, most már látnia kell az adatbázis aktuális nevét a Linux-konzolon:
Gratulálok! Sikeresen elvégezte az útmutatót, és most már csatlakozhat az Azure SQL Database-hez a C++-ról Windows és Linux platformokon.
A teljes C/C++ oktatóanyag-megoldás lekérése
Az ebben a GetStarted cikkben szereplő összes mintát tartalmazó megoldást a GitHubon találja:
- ODBC C++ Windows-minta, A Windows C++ ODBC-minta letöltése az Azure SQL-hez való csatlakozáshoz
- ODBC C++ Linux-minta, A Linux C++ ODBC-minta letöltése az Azure SQL-hez való csatlakozáshoz