postgresql C/C++ API 接口


1,postgresql學習uri推薦

http://www.php100.com/manual/PostgreSQL8/

http://www.php100.com/manual/PostgreSQL8/reference.html

http://www.yiibai.com/html/postgresql/

[Note tips byRuiy,distinguish uri/url,service/server,There has a certain truth chillax!]

 

Friends all stunned ->lithe Ruiy the story;

 

2,PostgreSQL linux distributionV ins、簡單sql  Ruiy在此就不多言了,主要是在linux平台下 OSUser與PostgreSQL的用戶間對等映射關系;

3,PostgreSQL C/C++API簡單實踐之API簡單熟悉介紹

postgresql C/C++ API主要使用libpq* lib;

image

libpqxx 庫下載uri

http://pqxx.org/download/software/libpqxx/

wget http://pqxx.org/download/software/libpqxx/libpqxx-4.0.tar.gz

3.01安裝libpqxx lib

tar libpqxx-4.0.tar.gz && cd libpqxx-4.0;

./configure && make && make install;

image

3.02配置postgresql 安裝目錄下的pg_hba.conf在其中添加

# Ipv4 local connections:
host all all 127.0.0.1/32 md5

一般pg_hba.conf位置在/var/lib/pgsql/data/目錄

3.03進入posygreSQL C/C++ API探索階段

  C/C++ APIs

pqxx::connection Ruiy(const std::string && dbstring)

連接到數據庫的一個類型定義,dbstring提供所需的參數:

dbname = Ruiy;

user = byRuiy;

password = 321;

hostaddr = 127.0.0.1;

port = 5432;

如果連接設置成功,它創建C與連接對象提供各種有用的公共函數.

Ruiy.is_open()

is_open()是一個連接對象的公共方法,並返回boolen type values,如果連接處於活動狀態,則此方法返回True,否則return false;

Ruiy.disconnect()使用此方法使打開的數據庫連接斷開.

(2,)pqxx:work Ruiy01(Ruiy)

此類型定義將用於創建一個事務對象,使用Ruiy連接方式,最終將用於執行SQL語句的事務模式.

如果交易對象被創建成功,那么它被分配到變量Ruiy01,這將被用來訪問相關的事務性對象的公共方法.

Ruiy01.exec(const std::string & sql)

這種從事務對象的公共方法將被用於執行SQL語句.

Ruiy01.commit()這種從事務對象飛公共方法將用於提交事務.

Ruiy01.abort()這種從事務的公共方法將用於回滾事務.

(3,)pqxx:notransaction Ruiy02(Ruiy)

這是一個類型定義,被用來創建使用Ruiy連接方式,最終將被用於在非事務性模式下執行SQL語句的非事務性對象.

如果交易對象被成功創建成功,那么被分配到變量Ruiy02用於訪問相關的非事務性對象的公共方法.

Ruiy02.exec(const std::string & sql)

從非事務對象的公共方法將被用於執行SQL語句,並返回一個結果對象,這實際上是一個迭代器返回的記錄.

4,實戰API

4.01配置測試數據庫

image

從上面截圖我們可以知道,postgresql 中用戶名是不區分字母大小寫的!

image

image

我們又知道上面我創建RuiY linuxOS用戶時故意沒為新建的用戶設置密碼,用此來驗證,PostgreSQL 的內部認證用戶與承載它的平台OS 的用戶之間的一一對一的映射關系;

image

image

我們在此重新配置測試PostgreSQL數據庫

image

哈哈哈,Ok我們的PostgreSQL 測試數據庫名為rui哦,親;

那隨Ruiy一起開始PostgresQL C/C++ API吧

image

image

image

image

記得配置

/var/lib/pgsql/data/pg_hba.conf  修改 host  all all ident 語句中的(ident 為md5);

Ok! going C++ code!

<,>1,連接本地

    postgresql rui,rui用戶,321密碼,默認pgsql 5432端口,codeExample:

 2,compile and run;

 <二,>1,創建表

codeExample

 2,compile and run;

<三,>1,表中插入數據

codeExample

 2,compileCodeExample

 

 

 

end byRuiy;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM