sql >> Databáze >  >> RDS >> PostgreSQL

ODBC v Libpq:Knihovna C pro PostgreSQL

ODBC je užitečné, pokud chcete standardní adaptér, který mluví podobným API pro různé databáze. Osobně si myslím, že je to hrozné API, ale je široce srozumitelné a dobře zdokumentované.

libpq komunikuje přímo s PostgreSQL. Můžete s ním dosáhnout lepšího výkonu, ale pravděpodobně ne natolik, aby to mělo nějaký význam pro většinu aplikací, které tráví čas prováděním dotazů, latencí sítě atd., nikoli v klientské knihovně.

Novější verze psqlODBC jsou postaveny na libpq a slouží jako ODBC wrapper pro libpq.

K dispozici je také libdbi, která nabízí méně příšerné API než ODBC.

Pro úplnost je zde také server-backend SPI, který mohou používat uživatelsky definované funkce napsané v C a načtené do PostgreSQL serveru. Není to užitečné mimo serverová rozšíření a funkce.

Jo a je tu ecpg. Nepoužívejte ecpg. Je to superstarší nástroj SQL s integrovaným jazykem, který existuje hlavně pro snadnější portování z určitých jiných databázových strojů. Nepoužívejte ecpg. Opravdu.

Pro C++ existuje rozhraní QtSQL (neobvykle pro Qt, je hrozné a bolestivě omezené, nepoužívejte ho) a libpq++ (OK, ale z velké části neudržované).

Osobně píšu libpq kód přímo, ale je to proto, že pracuji na kódu, který obvykle jde do PostgreSQL sám. Pokud si nedokážete představit, že byste někdy chtěli cílit na cokoli kromě PostgreSQL, možná budete chtít napsat kód libpq; jinak pravděpodobně použijte ODBC s psqlODBC.



  1. Odstraňte duplicitní řádky v Oracle SQL a ponechte nejnovější záznamy

  2. Jak zkombinuji svých 5 nejlepších platů a 5 nejnižších platů pro zobrazení v Oracle?

  3. Jak vložit do řádku MYSQL z více polí $_POST

  4. Problém s blokem PL/SQL:Chyba nenalezena žádná data