GBase8d_C_API_04_LDAP C API的使用方式

GBase8d_C_API_04_LDAP C API的使用方式

通过上面的介绍,用户一定想知道如何使用GBase 8d C API编写客户端程序,实现对目录服务器的基本操作,目录服务器的基本操作共有9个

  1. 绑定
  2. 解绑定
  3. 添加
  4. 删除
  5. 修改
  6. 更改RDN
  7. 查询
  8. 比较
  9. 放弃

应用程序通常按以下四个步骤使用GBase 8d C API,完成上面的操作。

  1. 打开一个到LDAP Server的连接,ldap_init()返回连接句柄,允许多个连接同时打开。
  2. 绑定:使用ldap_simple_bind()及其他相关函数进行绑定。
  3. 执行ldap操作获取结果。例如:查询操作ldap_search()及相关函数返回的结果可以由ldap_result2error(),ldap_first_entry(),ldap_next_entry()解析。
  4. 解绑定并关闭连接。由ldap_unbind()调用实现。

操作能够同步或异步地执行。

下面解释一下同步和异步操作:

  1. 同步执行模式:客户应用请求发给服务器之后,将等待服务器返回所有结果,才继续执行。例如查询操作,客户端上的应用程序在向服务器发出查询操作的指令后,将一直等待服务器将查询结果返回客户端后,才继续进行下一步操作。
  2. 异步执行模式:是指语句在异步执行模式下,各语句执行结束的顺序与语句执行开始的顺序并不一定相同。例如查询操作,客户端上的应用程序在向服务器发出了查询操作的指令后,将立刻执行查询语句的下一条语句,而不需要等到服务器将查询结果返回客户端后,才继续进行下一步操作。

在LDAP操作中也同样存在以上两种执行模式,在GBase 8d C API中,同步调用以_s结尾,所以同步查询的函数为ldap_search_s()。所有同步程序返回一个代表操作结果的指示符。(例如:常量LDAP_SUCCESS或其他错误码)。异步程序返回操作初始化的消息ID。此ID可以被随后的ldap_result()调用取得操作结果(结果集)。一个异步操作可以被ldap_abandon()函数取消。

结果和错误返回到一个非透明的结构LDAPMessage中。程序提供解析此结构、进入条目和返回的属性等功能。程序同样提供错误解释工作。下一节详细描述这些程序例程。

在下面的各章节中我们以LDAP的9大基本操作,逐步讲解使用GBase 8d C API的编写客户端程序的过程。除了abandon操作以外的其它操作又分同步和异步两种。在每个sample中都有绑定和解绑定两种操作,所以我们只在第一个sample中讲解绑定和解绑定。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
gbase 8a 是一款国产的高性能关系型数据库管理系统,与MySQL是两款不同的数据库软件,因此不能直接使用MySQL的驱动来连接gbase 8a。 不过,gbase 8a提供了自己的ODBC驱动,可以使用ODBC的方式来连接gbase 8a数据库。在Java中,我们可以使用JDBC-ODBC桥来连接gbase 8a数据库,具体步骤如下: 1. 安装gbase 8a ODBC驱动,可以从gbase官网下载或联系gbase技术支持获取下载链接。 2. 配置ODBC数据源,在控制面板中打开“ODBC数据源”窗口,添加一个gbase的数据源,填写相应的连接信息。 3. 在Java中使用JDBC-ODBC桥来连接gbase 8a数据库,示例代码如下: ``` String url = "jdbc:odbc:yourdataresource"; // 数据源名称 String user = "username"; // 数据库用户名 String password = "password"; // 数据库密码 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn = DriverManager.getConnection(url, user, password); ``` 在上述代码中,"jdbc:odbc:yourdataresource" 中的 "yourdataresource" 是ODBC数据源的名称,user 和 password 分别是gbase 8a数据库的用户名和密码。通过 Class.forName() 加载 JDBC-ODBC桥的驱动程序,在 DriverManager.getConnection() 方法中传入连接字符串、用户名和密码来获取连接对象。 4. 进行数据库操作,使用JDBC标准的API进行数据库操作,例如: ``` Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM tableName"); while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); //处理查询结果 } rs.close(); stmt.close(); conn.close(); ``` 以上就是使用JDBC-ODBC桥连接gbase 8a数据库的基本步骤,希望对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值