检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
开发流程 图1 ecpg整体开发流程 图2 嵌入式SQL-C程序开发流程 父主题: 基于ecpg开发
宿主变量 本节详细介绍如何在C语言程序和嵌入式SQL程序之间使用宿主变量传递数据。在嵌入式SQL-C程序中,将C语言作为宿主语言,将EXEC SQL [Command]语句认为是宿主语言的嵌入式SQL,因此将C语言程序中用于嵌入式SQL语句的变量称为宿主变量。 概述 声明段 检索查询
常用示例 ecpg常用示例代码 #include <locale.h> #include <string.h> #include <stdlib.h> exec sql whenever sqlerror sqlprint; exec sql include sqlca; int
连接参数参考 info参数连接的所有属性名称对大小写敏感。常用的属性如表1所示。 表1 info参数的连接属性 属性名称 属性说明 属性值 PGDBNAME 表示数据库名称(URL中无需配置该参数,自动从Properties文件中解析)。 属性类型:String PGHOST 主机IP地址。
开发流程 图1 采用JDBC开发应用程序的流程 父主题: 基于JDBC开发
开发流程 编译并且连接一个libpq的源程序,需要做下面的一些事情: 解压GaussDB-Kernel-VxxxRxxxCxx-xxxxx-64bit-Libpq.tar.gz文件,其中include文件夹下的头文件为所需的头文件,lib文件夹中为所需的libpq库文件。 除libpq-fe
连接参数 表1 连接参数 参数 描述 host 要连接的主机名。如果主机名以斜杠开头,则它声明使用UNIX域套接字通讯而不是TCP/IP通讯;该值就是套接字文件所存储的目录。如果没有声明host,那么默认是与位于/tmp目录(或者安装GaussDB的时候声明的套接字目录)里面的U
开发流程 图1 采用Psycopg2开发应用程序的流程 父主题: 基于Psycopg开发
开发步骤 获取驱动jar包并配置JDK1.8 连接数据库 执行SQL语句 处理结果集 关闭数据库连接 父主题: 基于JDBC开发
开发流程 libpq开发流程如图1所示。 图1 libpq开发流程图 父主题: 基于libpq开发
Psycopg包 准备相关驱动和依赖库。可以从发布包中获取,包名为GaussDB-Kernel_数据库版本号_操作系统版本号_64bit_Python.tar.gz。 解压后有两个文件夹: psycopg2:psycopg2库文件。 lib:lib库文件。 加载驱动。 在使用驱动之前,需要做如下操作:
batchMode设置错误 问题现象 设置url参数batchMode=on且reWriteBatchedInserts=true,使用JDBC批量插入数据,抛出异常,提示绑定参数数量与语句需要的参数数量不一致: bind message supplies * parameters
访问特殊数据类型 ecpg支持numeric、decimal、date、timestamp和interval数据类型。由于这些数据类型的内部结构较为复杂,无法被映射到初级数据类型的宿主变量,因此应用程序通过声明特殊类型的宿主变量以及使用pgtypes库中的函数处理这些特殊类型。p
define和undef指令 嵌入式SQL具有类似于C语言中#define指令: EXEC SQL DEFINE name; EXEC SQL DEFINE name value; EXEC SQL UNDEF name; 示例如下: /* 定义名称 */ EXEC SQL DEFINE
define和undef指令 嵌入式 SQL具有类似于C语言中#define指令: EXEC SQL DEFINE name; EXEC SQL DEFINE name value; EXEC SQL UNDEF name; 示例如下: /* 定义名称 */ EXEC SQL DEFINE
连接数据库(UDS方式) Unix domain socket用于同一主机上不同进程间的数据交换,通过添加junixsocket获取套接字工厂使用。 需要引用的jar包有junixsocket-core-XXX.jar、junixsocket-common-XXX.jar、jun
处理结果集 设置结果集类型 不同类型的结果集有各自的应用场景,应用程序需要根据实际情况选择相应的结果集类型。在执行SQL语句过程中,需要先创建相应的语句对象,而部分创建语句对象的方法提供了设置结果集类型的功能。具体的参数设置如表1所示。涉及的Connection的方法如下: 1 2
java.sql.CallableStatement java.sql.CallableStatement是存储过程执行接口。 表1 对java.sql.CallableStatement的支持情况 方法名 返回值类型 支持JDBC 4 getArray(int parameterIndex)
SQLAllocConnect 在ODBC 3.x版本中,ODBC 2.x的函数SQLAllocConnect已被SQLAllocHandle代替。有关详细信息请参见SQLAllocHandle。 父主题: ODBC接口参考
connection.close() 功能描述 此方法关闭数据库连接。 此方法关闭数据库连接,并不自动调用commit()。如果只是关闭数据库连接而不调用commit()方法,那么所有更改将会丢失。 原型 connection.close() 参数 无 返回值 无 示例 请参见示例:常用操作。