网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 数据库技术 > 其它数据库 > Linux下免费数据库PostgreSQL开发入门  

Linux下免费数据库PostgreSQL开发入门

2006-10-25  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

1.C语言接口

  • 头文件libqp-fe.h 连接时需要添加连接参数-lpq也就是连接libpq库。
  • 建立数据库连接函数
    
    PGconn  *PQconnectdb( const char *conninfo) 
    PGconn *PQsetdbLogin(const char *pghost,
                                const char *pgport,
                                  const char *pgoptions,
                                  const char *pgtty,
                                  const char *dbName,
                                  const char *login,
                                  const char *pwd)
                 网管u家u.bitscn@com 

    建立非阻塞连接函数 网管联盟bitsCN_com

    
    PGconn *PQconnectStart(const char *conninfo)
    PostgresPollingStatusType *PQconnectPoll(PQconn *conn)
                 网管bitscn_com 

  • 执行查询函数
    
    PGresult *PQexec(PGconn *conn,const char *query) 返回查询的结构集。
    int PQntuples(const Pgresult *res) 返回查询结果里的记录个数。
    int PQnfields(const Pgresult *res) 返回记录中的字段的个数。
    char *PQfname(const Pgresult *res,int field_index)返回结构集中某一字段的名称。
    Oid PQftype(const Pgresult *res, int field_index) 返回结构集中某一字段的数据类型。
    char *PQgetvalue(const Pgresult *res,int tup_num, int field_index)
    返回结构集中某一条记录中某一个字段的值。

    中国网管论坛bbs.bitsCN.com


    这里只列举最常用的一些函数,具体说明可以参见文档。 中国网管论坛bbs.bitsCN.com

  • 大对象数据操作,主要使用下列函数在SQL语句中操作大对象数据。
    Oid lo_creat(PGconn *conn,

    int mode) 网管联盟bitsCN@com

    创建一个新的大对象.mode 是一个位掩码,描述新对象的不同属性
    Oid lo_import(PGconn *conn,

    const char *filename) 网管bitscn_com

    把文件作为大对象导入数据库
    int lo_export(PGconn *conn,

    Oid lobjId, const char *filename) 网管u家u.bitscn@com

    大对象导入出数据库,保存为文件
    int lo_open(PGconn *conn,

    Oid lobjId, int mode)

    网管论坛bbs_bitsCN_com

    打开一个现存的大对象
    int lo_write(PGconn *conn, int fd,

    const char *buf, size_t len)

    网管网www.bitscn.com

    大对象写入数据
    int lo_read(PGconn *conn, int fd,

    char *buf, size_t len) 网管u家u.bitscn@com

    从大对象读取数据
    int lo_lseek(PGconn *conn, int fd,

    int offset, int whence)

    网管u家u.bitscn@com

    对大对象数据进行查找
    int lo_close(PGconn *conn, int fd) 关闭大对象描述符

    函数在fe-lobj.c文件中定义,具体使用参见 Accessing Large Objects from libpq 网管bitscn_com

    上面函数的具体介绍请参见 PostgreSQL v7.0文档 在这里就不详细介绍了。这里省略列举状态检查函数,参见参考文档。

    网管网www_bitscn_com

    使用C语言访问数据库的除了libpq库,还有其他如 libpqeasy,ecpg 等接口。

    网管u家u.bitsCN.com

2.C++语言接口

网管联盟bitsCN@com

网管下载dl.bitscn.com

  • 头文件 libpq++.h 连接需要的库位 pq++,连接参数是 -lpq++
  • libpq++ 类继承关系图

    网管网www_bitscn_com



网管联盟bitsCN@com


TAGs   开发   入门   数据库   免费   int   char   const   <   类型   数据      
 上一篇:源码安装Postgresql8.1.3+PostGIS1.1.2   下一篇:PostgreSQL介绍及安装指南
Linux下免费数据库PostgreSQL开发入门 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: