正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
管理数据库连接 本章节介绍如何建立以及切换数据库连接。 连接数据库 管理连接 父主题: 基于ecpg开发
关闭数据库连接 数据库使用完成后关闭数据库连接。 使用如下语句关闭连接: EXEC SQL DISCONNECT [connection]; connection可通过如下方法声明: connection-name(连接名) default(缺省) current(当前) all(所有)
关闭数据库连接 在使用数据库连接完成相应的数据操作后,需要关闭数据库连接。 关闭数据库连接可以直接调用close方法。 // 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放,使用时解密),确保安全。 // 本示例以用户名和密码
PGobject 表1 PGobject常用方法 返回值 方法 描述 throws 支持JDBC4 Object[] getStruct() 获取复合类型子类型名,按创建顺序排序。 - Yes String getValue() 获取复合类型字符串形式值。 - Yes String[]
SQLAllocEnv 在ODBC 3.x版本中,ODBC 2.x的函数SQLAllocEnv已被SQLAllocHandle代替。有关详细信息请参见SQLAllocHandle。 父主题: ODBC接口参考
SQLExecute 功能描述 如果语句中存在参数标记,SQLExecute函数使用参数标记参数的当前值,执行一条准备好的SQL语句。 原型 1 SQLRETURN SQLExecute(SQLHSTMT StatementHandle); 参数 表1 SQLExecute参数
SQLFreeEnv 在ODBC 3.x版本中,ODBC 2.x的函数SQLFreeEnv已被SQLFreeHandle代替。有关详细信息请参见SQLFreeHandle。 父主题: ODBC接口参考
SQLPrepare 功能描述 准备一个将要进行的SQL语句。 需要注意的是,ODBC发送准备好语句不支持内核复用计划,会导致每次执行都需要重新生成计划,导致CPU占用率高。如果业务对计划复用有需求,建议优先使用JDBC作为客户端。 原型 1 2 3 SQLRETURN SQLPrepare(SQLHSTMT
cursor.fetchone() 功能描述 此方法提取查询结果集的下一行,并返回一个元组。 原型 cursor.fetchone() 参数 无。 返回值 单个元组,为结果集的第一条结果,当没有更多数据可用时,返回为“None”。 示例 请参见示例:常用操作。 父主题: Psycopg接口参考
使用游标 使用游标可以检索出多行的结果集,应用程序必须声明一个游标并且从游标中抓取每一行数据。 声明一个游标: EXEC SQL DECLARE c CURSOR FOR select * from tb1;; 打开游标: EXEC SQL OPEN c; 从游标中抓取一行数据:
java.sql.PreparedStatement java.sql.PreparedStatement是预处理语句接口。 表1 对java.sql.PreparedStatement的支持情况 方法名 返回值类型 支持JDBC 4 clearParameters() void
javax.naming.Context javax.naming.Context是连接配置的上下文接口。 表1 对javax.naming.Context的支持情况 方法名 返回值类型 支持JDBC 4 bind(Name name, Object obj) void Yes bind(String
batchMode设置错误 问题现象 设置url参数batchMode=on且reWriteBatchedInserts=true,使用JDBC批量插入数据,抛出异常,提示绑定参数数量与语句需要的参数数量不一致: bind message supplies * parameters
connection.close() 功能描述 此方法关闭数据库连接。 此方法关闭数据库连接,并不自动调用commit()。如果只是关闭数据库连接而不调用commit()方法,那么所有更改将会丢失。 原型 connection.close() 参数 无。 返回值 无。 示例 请参见示例:常用操作。
type Row type Row如下所示。 方法 描述 返回值 (r *Row)Scan(dest ...interface{}) 将当前数据行中的列复制到dest指向的值中。 error (r *Row)Err() 返回执行过程中出现的错误。 error 参数说明 参数 参数说明
执行SQL语句 执行普通SQL语句 应用程序通过执行SQL语句来操作数据库,需要按以下步骤执行。 支持对XML类型数据进行SELECT、UPDATE、INSERT、DELETE等操作。 调用Connection的createStatement方法创建语句对象。 1 2 3 4 5
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