MySQL a rozhraní ODBC
MySQL podporuje ODBC díky MyODBC. Jak nainstalovat MyODBC? Jaký je účel ODBC pro MySQL? Jak pracovat s ODBC v PHP skriptu?
Možná znáte MySQL PHP API, s jehož pomocí se PHP skript připojuje k poskytovateli dat a které je součástí PHP. Dalším příkladem budiž třeba MySQL C API, které přilinkujete při sestavování aplikace. Práce s PHP a C API je rozdílná, příkazy jsou odlišné. Existuje také univerzální rozhraní ODBC (Open Database Connectivity), se kterým by se mělo (dle norem) pracovat stejně pro libovolný SQL server (norma na jazyk SQL v rámci ODBC) i pro libovolnou ODBC-schopnou aplikaci.
MyODBC je 32bitový ODBC ovládač pro připojení jakékoli ODBC-schopné aplikace k MySQL. MyODBC spolehlivě funguje na Windows95, Windows98/SE/ME, NT, 2000, XP a na většině Unixových platformách. Běžně se MyODBC používá pro Access, VBA, Excel, Word, Delphi, ASP, Cold Fussion ad. Tedy pokud plánujete používat stránky ASP, musíte nainstalovat také toto rozhraní.
Obecně o ODBC
ODBC slouží jako mezičlánek pro spojení klientské aplikace a databázového serveru. Přístup přes rozhraní ODBC je unifikovaný, tj. ze strany klienta se k němu přistupuje pořád stejným způsobem, nezávisle na tom, s jakým databázovým serverem pracujete. Dřívější verze ODBC tvořily jen jakýsi mezistupeň mezi aplikací a nativními ovladači databázového serveru. V současnosti takovéto ztráty výkonnosti nehrozí, neboť i ODBC přistupuje přímo.
Download a nastavení
Distribuce MyODBC jsou vystaveny v download sekci oficiální prezentace www.mysql.cz. Zvolte si samozřejmě operační systém (Windows nebo Linux) a jeho verzi. Můžete si také stáhnout zdrojové soubory a sestavit si binární distribuci sami. Vzhledem k problémům vyskytujícím se u ODBC na Linuxu a malé oblíbenosti tohoto řešení se budu dále věnovat jen operačním systémům rodiny Windows.
Parametry přístupu se nastavují v Ovládacích panelech (Windows 95 a vyšší), resp. Nástrojích pro správu (Windows NT a vyšší). Zvolte ODBC data source administrator. Existují Uživatelská DSN (User DSN) a Systémová DSN (System DSN). K uživatelským má přístup jen přihlášený uživatel, který je nastavil a v rámci lokálního počítače. Zdroje dat (DSN = data source name) tedy budete registrovat jako systémové, které jsou k dispozici všem uživatelům včetně služeb technologie NT.
V záložce System DSN se objeví všechny již nastavené systémové zdroje dat. Stiskněte Add pro přidání dalšího.
Zvolte MySQL. Nastavení jiných ovladačů je velice podobné.
Widnows DSN name – název datového zdroje. Doporučuji zvolit stejný jako název databáze.
MySQL host – název nebo IP adresa počítače, na kterém běží MySQL.
MySQL database name – název databáze, ke které se bude přistupovat.
User – uživatelské jméno, pod kterým se bude s databází pracovat. Pokud jej vyplníte, bude vždy právě s ním daný datový zdroj spojen.
Password – heslo uživatele, který je uveden v User. Pokud uvedete také heslo, budou se ODBC-schopné aplikace moci připojit bez jakékoli autentizace se všemi z toho plynoucími výhodami i nebezpečími.
Port (if not 3306) – jestliže server běží na jiném, než výchozím portu.
SQL command on connect – ihned po připojení k poskytovateli dat se vykoná zde zapsaný SQL příkaz.
Options that affects the behaviour of MyODBC – zde pro každý datový zdroj zvlášť můžete ovladač konfigurovat. Změny výchozích nastavení nejsou v drtivé většině případů nevyhnutelné. Odkazuji vás proto na originální dokumentaci MyODBC.
MyODBC a ASP
Stránky ASP pracují s datovými zdroji pomocí rozhraní ODBC.
|
MyODBC a PHP
Krátký příklad ukazuje rozdíl v nejvíce používaných příkazech a programových strukturách mezi nativním a ODBC ovladačem pro připojení skriptu PHP k databázi MySQL.
|
Bezproblémové změny
Kdykoli se rozhodnete změnit databázový server např. z MySQL na něco výkonnějšího, např. Microsoft SQL Server, nemusíte v případě Microsoft Active Server Pages své ASP stránky vlastně ani měnit. V případě PHP skriptů, které používají nativní ovladače by to bylo podstatně horší. Pokud však přejdete i v PHP na ODBC, změny jsou také bezproblémové.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Jak zvýšit CTR vašeho e-mail marketingu
9. září 2024 -
Co je to DNSSEC, jak funguje a jak si ho nastavit?
14. srpna 2024 -
Webdesign: Jak optimalizovat tlačítka na webu
7. března 2024 -
AI a internetové podvody
29. října 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024
Petr Brynych
Dub 21, 2010 v 15:13Dobrý den. Nevíte, prosím, jak pomocí rozhraní ODBC poslat do MySQL inrmaci o kódování v češtině? Mám databázi v MySQL utf8 a MSSQL do ní posílá data a jsou tam chybně české znaky. Lze nastavit, aby MSSQL poslal informaci, že text je například v cp1250?Děkuji za pomoc