linux数据库服务器c代码,C && PGSQL Linux下PostgresQL数据库C语言接口(转载)

using namespace std; /******************************************************************************/ int main(int argc, char** argv) { const char*conninfo="hostaddr=127.0.0.1 user=Meme dbname=MyDatabasepassword=123"; PGconn* conn=PQconnectdb(conninfo); if(PQstatus(conn)==CONNECTION_OK) { cout<

2. 与后端数据库服务器建立一个新的连接

PGconn *PQconnectdb(const char *conninfo) ;

从字符串conninfo传参以建立与Database的连接。字符串中可以包含如下信息

host 主机 hostaddr 主机IP地址 port 端口或套接字扩展文件名 dbname 数据库名 user 用户名 password 用户密码 option 调试选项

及connect_timeout,tty,sslmode,requiressl等其他不常用信息。

一般使用的是:

const char* conninfo="hostaddr=127.0.0.1user=Meme dbname=MyDatabase password=123";

以上这几种必要信息。字符串写法大致为”关键字=数值 “形式,参照该示例即可。

3. PGconn *PQsetdbLogin(const char* pghost,const char* pgport,const char*pgoption,const char* pgtty,const char* dbname,const char* login,const char* pwd);

该函数是PGconnectdb()前身,功能上一致,区别在于固定个数的参数,具体可参照官方文档。由于PGconnectdb()在使用上更为灵活,首推使用PGconnectdb()。

4. 关闭连接

void PQfinish(PGconn* conn);

释放被PGconn对象使用的存储器,PGconn指针不可再使用

5. 返回连接状态。

ConnStatusType PQstatus(const PGconn* conn);

返回状态,最常用的是这两个:

CONNECTION_OK与DB成功连接CONNECTION_BAD与DB连接失败

通常,一个OK状态将保持到PQfinish(),但一个通讯失败可能导致状态过早地变为BAD。这时,程序可试用PQreset()恢复。

6. 重新连接 void PQreset(PGconn* conn);

7. 与数据库服务器建立一个非阻塞连接

PGconn* PQconnectStart(const char* conninfo);

PosgresPollingStatusType *PQconnectPoll(PGconn *conn);

你的应用执行线程在运行时不会阻塞远端I/O。你必须在调用PQconnectPoll()之前确保socket处于正确的状态。这两个函数都不会阻塞线程。

PostgreSQL libpq的数据库连接方面简单使用就是这些,参照上文示例,我们已经可以让C语言程序成功连接PostgreSQL数据库了,以后的文章将接着介绍libpq的其他函数,诸如数据库查询函数等等。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值