Udostępnij za pośrednictwem


Programowanie dostępu do danych (MFC/ATL)

Uwaga / Notatka

Biblioteki Microsoft Foundation Classes (MFC) i Active Template Library (ATL) nadal są obsługiwane. Nie dodajemy już funkcji ani nie aktualizujemy dokumentacji.

Przez lata program Visual C++ udostępniał kilka sposobów pracy z bazami danych. W 2011 r. firma Microsoft ogłosiła, że będzie opierać się na technologii Open Database Connectivity (ODBC) jako preferowanej technologii uzyskiwania dostępu do produktów SQL Server z kodu natywnego. ODBC jest standardem branżowym i przy jego użyciu uzyskujesz maksymalną przenośność kodu na wielu platformach i źródłach danych. Większość produktów bazy danych SQL i wiele produktów NoSQL obsługuje odBC. Możesz używać ODBC bezpośrednio, wywołując niskopoziomowe API ODBC, używając klas otoki MFC ODBC, lub biblioteki otoki C++ od innego dostawcy.

OLE DB to interfejs API o niskiej wydajności oparty na specyfikacji COM i obsługiwany tylko w systemie Windows. Użyj ole DB, jeśli program uzyskuje dostęp do połączonych serwerów. Usługa ATL udostępnia szablony OLE DB, które ułatwiają tworzenie niestandardowych dostawców i użytkowników OLE DB. Najnowszy dostawca programu Microsoft SQL Server można znaleźć w dokumentacji sterownika OLE DB dla programu SQL Server.

Przenoszenie aplikacji danych

Jeśli starsza aplikacja używa interfejsu OLE DB lub interfejsu ADO wyższego poziomu do nawiązywania połączenia z programem SQL Server, rozważ migrację do najnowszego sterownika OLE DB dla programu SQL Server, aby móc korzystać z najnowszych funkcji programu SQL Server . Inna alternatywa, jeśli nie jest wymagana przenośność międzyplatformowa lub najnowsze funkcje programu SQL Server, możesz użyć dostawcy MICROSOFT OLE DB dla ODBC (MSDASQL). MSDASQL umożliwia aplikacjom opartym na OLE DB i ADO (które używają wewnętrznie OLEDB) dostęp do źródeł danych przez sterownik ODBC. Podobnie jak w przypadku dowolnej warstwy tłumaczenia baza danych MSDASQL może mieć wpływ na wydajność bazy danych. Należy przetestować, aby określić, czy wpływ jest istotny dla aplikacji. Program MSDASQL jest dostarczany z systemem operacyjnym Windows, a Windows Server 2008 i Windows Vista z dodatkiem SP1 są pierwszymi wersjami systemu Windows, które zawierają 64-bitową wersję tej technologii.

Jeśli aplikacja języka C++ łączy się z programem SQL Server lub usługą Azure SQL Database za pośrednictwem ODBC, powinien użyć najnowszego sterownika ODBC.

Jeśli używasz języka C++/interfejsu wiersza polecenia, możesz nadal używać ADO.NET tak jak zawsze. Aby uzyskać więcej informacji, zobacz Dostęp do danych przy użyciu ADO.NET (C++/CLI) i Uzyskiwanie dostępu do danych w programie Visual Studio.

  • Oprócz klas otoki ODBC, MFC udostępnia również klasy otoki obiektów dostępu do danych (DAO) na potrzeby nawiązywania połączenia z bazami danych programu Access. Jednak dao jest przestarzałe. Każdy kod oparty na CDaoDatabase lub CDaoRecordset należy uaktualnić.

Aby uzyskać więcej informacji na temat historii technologii dostępu do danych w systemie Microsoft Windows, zobacz Microsoft Data Access Components (Wikipedia).

Zobacz też

Dostęp do danych
Microsoft Open Database Connectivity (ODBC)