Class JdbcConnection

JdbcConnection

一个 JDBC Connection。如需查看此类的文档,请参阅 java.sql.Connection

方法

方法返回类型简介
clearWarnings()void有关此方法的文档,请参阅 java.sql.Connection#clearWarnings()
close()void释放此连接的数据库和所有关联资源。
commit()void使所有待更改项永久生效,并释放此 JdbcConnection 持有的数据库锁定。
createArrayOf(typeName, elements)JdbcArray有关此方法的文档,请参阅 java.sql.Connection#createArrayOf(String, Object[])
createBlob()JdbcBlob构造 JdbcBlob 实例。
createClob()JdbcClob如需查看此方法的文档,请参阅 java.sql.Connection#createClob()
createNClob()JdbcClob如需查看此方法的文档,请参阅 java.sql.Connection#createNClob()
createSQLXML()JdbcSQLXML如需查看此方法的文档,请参阅 java.sql.Connection#createSQLXML()
createStatement()JdbcStatement创建用于向数据库发送 SQL 语句的 JdbcStatement 对象。
createStatement(resultSetType, resultSetConcurrency)JdbcStatement创建用于向数据库发送 SQL 语句的 JdbcStatement 对象。
createStatement(resultSetType, resultSetConcurrency, resultSetHoldability)JdbcStatement创建用于向数据库发送 SQL 语句的 JdbcStatement 对象。
createStruct(typeName, attributes)JdbcStruct有关此方法的文档,请参阅 java.sql.Connection#createStruct(String, Object[])
getAutoCommit()Boolean有关此方法的文档,请参阅 java.sql.Connection#getAutoCommit()
getCatalog()String或此方法的文档,请参阅 java.sql.Connection#getCatalog()
getHoldability()Integer有关此方法的文档,请参阅 java.sql.Connection#getHoldability()
getMetaData()JdbcDatabaseMetaData如需查看此方法的文档,请参阅 java.sql.Connection#getMetaData()
getTransactionIsolation()Integer有关此方法的文档,请参阅 java.sql.Connection#getTransactionIsolation()
getWarnings()String[]如需查看此方法的文档,请参阅 java.sql.Connection#getWarnings()
isClosed()Boolean如需查看此方法的文档,请参阅 java.sql.Connection#isClosed()
isReadOnly()Boolean如需查看此方法的文档,请参阅 java.sql.Connection#isReadOnly()
isValid(timeout)Boolean如需查看此方法的文档,请参阅 java.sql.Connection#isValid(int)
nativeSQL(sql)String有关此方法的文档,请参阅 java.sql.Connection#nativeSQL(String)
prepareCall(sql)JdbcCallableStatement有关此方法的文档,请参阅 java.sql.Connection#prepareCall(String)
prepareCall(sql, resultSetType, resultSetConcurrency)JdbcCallableStatement有关此方法的文档,请参阅 java.sql.Connection#prepareCall(String, int, int)
prepareCall(sql, resultSetType, resultSetConcurrency, resultSetHoldability)JdbcCallableStatement有关此方法的文档,请参阅 java.sql.Connection#prepareCall(String, int, int, int)
prepareStatement(sql)JdbcPreparedStatement有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String)
prepareStatement(sql, autoGeneratedKeys)JdbcPreparedStatement有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int)
prepareStatement(sql, resultSetType, resultSetConcurrency)JdbcPreparedStatement有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int, int)
prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability)JdbcPreparedStatement有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int, int, int)
prepareStatementByIndex(sql, indices)JdbcPreparedStatement有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int[])
prepareStatementByName(sql, columnNames)JdbcPreparedStatement有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, String[])
releaseSavepoint(savepoint)void有关此方法的文档,请参阅 java.sql.Connection#releaseSavepoint(Savepoint)
rollback()void如需查看此方法的文档,请参阅 java.sql.Connection#rollback()
rollback(savepoint)void有关此方法的文档,请参阅 java.sql.Connection#rollback(Savepoint)
setAutoCommit(autoCommit)void有关此方法的文档,请参阅 java.sql.Connection#setAutoCommit(boolean)
setCatalog(catalog)void有关此方法的文档,请参阅 java.sql.Connection#setCatalog(String)
setHoldability(holdability)void有关此方法的文档,请参阅 java.sql.Connection#setHoldability(int)
setReadOnly(readOnly)void有关此方法的文档,请参阅 java.sql.Connection#setReadOnly(boolean)
setSavepoint()JdbcSavepoint如需查看此方法的文档,请参阅 java.sql.Connection#setSavepoint()
setSavepoint(name)JdbcSavepoint有关此方法的文档,请参阅 java.sql.Connection#setSavepoint(String)
setTransactionIsolation(level)void有关此方法的文档,请参阅 java.sql.Connection#setTransactionIsolation(int)

详细文档

clearWarnings()

有关此方法的文档,请参阅 java.sql.Connection#clearWarnings()

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

close()

释放此连接的数据库和所有关联资源。

var conn = Jdbc.getConnection("jdbc:mysql://<host>:<port>/<instance>", "user", "password");
conn.close();

另请参阅

  • Connection.close()

commit()

使所有待更改项永久生效,并释放此 JdbcConnection 持有的数据库锁定。

var conn = Jdbc.getConnection("jdbc:mysql://<host>:<port>/<instance>", "user", "password");
conn.setAutoCommit(false);
var stmt = conn.prepareStatement("insert into person (lname,fname) values (?,?)");
var start = new Date();
for (var i = 0; i < 5000; i++) {
  // Objects are accessed using 1-based indexing
  stmt.setObject(1, 'firstName' + i);
  stmt.setObject(2, 'lastName' + i);
  stmt.addBatch();
}
var res = stmt.executeBatch();
conn.commit(); // When this returns, this is when changes are actually committed
conn.close();

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

另请参阅

  • Connection.commit()

createArrayOf(typeName, elements)

有关此方法的文档,请参阅 java.sql.Connection#createArrayOf(String, Object[])

参数

名称类型说明
typeNameString数组元素对应的数据库专用 SQL 名称类型。选项包括 内置类型、用户定义的类型或数据库支持的标准 SQL 类型。
elementsObject[]要在返回的对象中填充的元素。

返回

JdbcArray - 其元素映射到指定 SQL 类型的数组。


createBlob()

构造 JdbcBlob 实例。另请参阅 java.sql.Connection#createBlob()

最初返回的对象不包含任何数据。您可以使用 setBytes 方法 JdbcBlob,用于设置其中应包含的数据。此处使用的 blob 与 使用 Utilities.newBlob(data) 创建的 blob。如何进行转换 请使用定义的 getBytes()setBytes() 方法。 或者,JdbcBlobJdbcClob 都提供 getAppsScriptBlob() 转换为 Apps 脚本可以使用的格式的便捷方法。

返回

JdbcBlob - 一个空的 blob 对象。


createClob()

如需查看此方法的文档,请参阅 java.sql.Connection#createClob()

返回

JdbcClob - 空的 clob 对象。


createNClob()

如需查看此方法的文档,请参阅 java.sql.Connection#createNClob()

返回

JdbcClob - 一个空的 nclob 对象。


createSQLXML()

如需查看此方法的文档,请参阅 java.sql.Connection#createSQLXML()

返回

JdbcSQLXML - 空的 SQLXML 对象。


createStatement()

创建用于向数据库发送 SQL 语句的 JdbcStatement 对象。另请参阅 java.sql.Connection#createStatement()

// This sample code assumes authentication is off
var conn = Jdbc.getConnection("jdbc:mysql://<host>:3306/<instance>")
var stmt = conn.createStatement();

stmt.setMaxRows(100);
var rs = stmt.execute("select * from person");

while(rs.next()) {
  // Do something
}

rs.close();
stmt.close();
conn.close();

返回

JdbcStatement - 用于执行查询的语句实例。


createStatement(resultSetType, resultSetConcurrency)

创建用于向数据库发送 SQL 语句的 JdbcStatement 对象。另请参阅 java.sql.Connection#createStatement(int, int)

此版本允许覆盖结果集类型和并发设置。

// This sample code assumes authentication is off
// For more information about this method, see documentation here:
//  http://docs.oracle.com/javase/6/docs/api/java/sql/Connection.html#createStatement(int, int)
var conn = Jdbc.getConnection("jdbc:mysql://<host>:3306/<instance>")
var stmt = conn.createStatement(Jdbc.ResultSet.TYPE_FORWARD_ONLY,
                                Jdbc.ResultSet.CONCUR_READ_ONLY);

stmt.setMaxRows(100);
var rs = stmt.execute("select * from person");

while(rs.next()) {
  // Do something
}

rs.close();
stmt.close();
conn.close();

参数

名称类型说明
resultSetTypeInteger结果集类型;Jdbc.ResultSet.TYPE_FORWARD_ONLYJdbc.ResultSet.TYPE_SCROLL_INSENSITIVEJdbc.ResultSet.TYPE_SCROLL_SENSITIVE 之一。
resultSetConcurrencyInteger并发类型;Jdbc.ResultSet.CONCUR_READ_ONLYJdbc.ResultSet.CONCUR_UPDATABLE

返回

JdbcStatement - 用于执行查询的语句实例。


createStatement(resultSetType, resultSetConcurrency, resultSetHoldability)

创建用于向数据库发送 SQL 语句的 JdbcStatement 对象。另请参阅 java.sql.Connection#createStatement(int, int, int)

此版本允许替换结果集类型、并发性和可保留性。

// This sample code assumes authentication is off
// For more information about this method, see documentation here:
//  http://docs.oracle.com/javase/6/docs/api/java/sql/Connection.html#createStatement(int, int)
var conn = Jdbc.getConnection("jdbc:mysql://<host>:3306/<instance>")
var stmt = conn.createStatement(Jdbc.ResultSet.TYPE_FORWARD_ONLY,
                                Jdbc.ResultSet.CONCUR_READ_ONLY,
                                Jdbc.ResultSet.HOLD_CURSORS_OVER_COMMIT);

stmt.setMaxRows(100);
var rs = stmt.execute("select * from person");

while(rs.next()) {
  // Do something
}

rs.close();
stmt.close();
conn.close();

参数

名称类型说明
resultSetTypeInteger结果集类型;Jdbc.ResultSet.TYPE_FORWARD_ONLYJdbc.ResultSet.TYPE_SCROLL_INSENSITIVEJdbc.ResultSet.TYPE_SCROLL_SENSITIVE 之一。
resultSetConcurrencyInteger并发类型;Jdbc.ResultSet.CONCUR_READ_ONLYJdbc.ResultSet.CONCUR_UPDATABLE
resultSetHoldabilityInteger可保留性设置;Jdbc.ResultSet.HOLD_CURSORS_OVER_COMMITJdbc.ResultSet.CLOSE_CURSORS_AT_COMMIT

返回

JdbcStatement - 用于执行查询的语句实例。


createStruct(typeName, attributes)

有关此方法的文档,请参阅 java.sql.Connection#createStruct(String, Object[])

参数

名称类型说明
typeNameString数组元素对应的数据库专用 SQL 名称类型。选项包括 内置类型、用户定义的类型或数据库支持的标准 SQL 类型。
attributesObject[]用于填充所返回对象的属性。

返回

JdbcStruct - 映射到给定 SQL 类型并填充指定的结构对象 属性。


getAutoCommit()

有关此方法的文档,请参阅 java.sql.Connection#getAutoCommit()

返回

Boolean - 如果连接的自动提交模式已启用,则为 true;否则为 false

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

getCatalog()

或此方法的文档,请参阅 java.sql.Connection#getCatalog()

返回

String - 当前目录名称或 null(如果尚未设置名称)。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

getHoldability()

有关此方法的文档,请参阅 java.sql.Connection#getHoldability()

返回

Integer - 连接的保全设置;Jdbc.ResultSet.HOLD_CURSORS_OVER_COMMITJdbc.ResultSet.CLOSE_CURSORS_AT_COMMIT


getMetaData()

如需查看此方法的文档,请参阅 java.sql.Connection#getMetaData()

返回

JdbcDatabaseMetaData - 此连接所连接的数据库的元数据。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

getTransactionIsolation()

有关此方法的文档,请参阅 java.sql.Connection#getTransactionIsolation()

返回

Integer - 当前交易级别,可以是以下级别之一:Jdbc.Connection.TRANSACTION_READ_UNCOMMITTEDJdbc.Connection.TRANSACTION_READ_COMMITTEDJdbc.Connection.TRANSACTION_REPEATABLE_READJdbc.Connection.TRANSACTION_SERIALIZABLEJdbc.Connection.TRANSACTION_NONE

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

getWarnings()

如需查看此方法的文档,请参阅 java.sql.Connection#getWarnings()

返回

String[] - 警告字符串数组。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

isClosed()

如需查看此方法的文档,请参阅 java.sql.Connection#isClosed()

返回

Boolean - true(如果连接关闭);否则为 false

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

isReadOnly()

如需查看此方法的文档,请参阅 java.sql.Connection#isReadOnly()

返回

Boolean - true(如果连接是只读);否则为 false

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

isValid(timeout)

如需查看此方法的文档,请参阅 java.sql.Connection#isValid(int)

参数

名称类型说明
timeoutInteger等待验证操作完成的时间(以秒为单位)。值为 0 表示未应用超时。

返回

Boolean - true(如果连接有效);否则为 false。如果超时期限在操作完成之前到期,也会返回 false

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

nativeSQL(sql)

有关此方法的文档,请参阅 java.sql.Connection#nativeSQL(String)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句占位符。

返回

String - 所提供语句的原生形式。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

prepareCall(sql)

有关此方法的文档,请参阅 java.sql.Connection#prepareCall(String)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句占位符,通常提供 使用 JDBC 调用转义语法。

返回

JdbcCallableStatement - 包含预编译 SQL 语句的 Callable 语句。


prepareCall(sql, resultSetType, resultSetConcurrency)

有关此方法的文档,请参阅 java.sql.Connection#prepareCall(String, int, int)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句占位符,通常提供 使用 JDBC 调用转义语法。
resultSetTypeInteger结果集类型;Jdbc.ResultSet.TYPE_FORWARD_ONLYJdbc.ResultSet.TYPE_SCROLL_INSENSITIVEJdbc.ResultSet.TYPE_SCROLL_SENSITIVE 之一。
resultSetConcurrencyInteger并发类型;Jdbc.ResultSet.CONCUR_READ_ONLYJdbc.ResultSet.CONCUR_UPDATABLE

返回

JdbcCallableStatement - 包含可生成结果的预编译 SQL 语句的 Callable 语句 具有提供的类型和并发设置的集合。


prepareCall(sql, resultSetType, resultSetConcurrency, resultSetHoldability)

有关此方法的文档,请参阅 java.sql.Connection#prepareCall(String, int, int, int)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句占位符,通常提供 使用 JDBC 调用转义语法。
resultSetTypeInteger结果集类型;Jdbc.ResultSet.TYPE_FORWARD_ONLYJdbc.ResultSet.TYPE_SCROLL_INSENSITIVEJdbc.ResultSet.TYPE_SCROLL_SENSITIVE 之一。
resultSetConcurrencyInteger并发类型;Jdbc.ResultSet.CONCUR_READ_ONLYJdbc.ResultSet.CONCUR_UPDATABLE
resultSetHoldabilityInteger可保留性设置;Jdbc.ResultSet.HOLD_CURSORS_OVER_COMMITJdbc.ResultSet.CLOSE_CURSORS_AT_COMMIT

返回

JdbcCallableStatement - 包含可生成结果的预编译 SQL 语句的 Callable 语句 并发设置。


prepareStatement(sql)

有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句IN 参数占位符。

返回

JdbcPreparedStatement - 包含预编译 SQL 语句的准备语句。


prepareStatement(sql, autoGeneratedKeys)

有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句IN 参数占位符。
autoGeneratedKeysInteger指示是否返回自动生成的键的标记;两者之一 Jdbc.Statement.RETURN_GENERATED_KEYSJdbc.Statement.NO_GENERATED_KEYS

返回

JdbcPreparedStatement - 包含预编译 SQL 语句的准备语句,可能能够 返回自动生成的键。


prepareStatement(sql, resultSetType, resultSetConcurrency)

有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int, int)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句IN 参数占位符。
resultSetTypeInteger结果集类型;Jdbc.ResultSet.TYPE_FORWARD_ONLYJdbc.ResultSet.TYPE_SCROLL_INSENSITIVEJdbc.ResultSet.TYPE_SCROLL_SENSITIVE 之一。
resultSetConcurrencyInteger并发类型;Jdbc.ResultSet.CONCUR_READ_ONLYJdbc.ResultSet.CONCUR_UPDATABLE

返回

JdbcPreparedStatement - 包含生成结果的预编译 SQL 语句的准备好的语句 具有提供的类型和并发设置的集合。


prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability)

有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int, int, int)

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句IN 参数占位符。
resultSetTypeInteger结果集类型;Jdbc.ResultSet.TYPE_FORWARD_ONLYJdbc.ResultSet.TYPE_SCROLL_INSENSITIVEJdbc.ResultSet.TYPE_SCROLL_SENSITIVE 之一。
resultSetConcurrencyInteger并发类型;Jdbc.ResultSet.CONCUR_READ_ONLYJdbc.ResultSet.CONCUR_UPDATABLE
resultSetHoldabilityInteger可保留性设置;Jdbc.ResultSet.HOLD_CURSORS_OVER_COMMITJdbc.ResultSet.CLOSE_CURSORS_AT_COMMIT

返回

JdbcPreparedStatement - 包含生成结果的预编译 SQL 语句的准备好的语句 具有提供的类型、并发和可保留性。


prepareStatementByIndex(sql, indices)

有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, int[])

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句IN 参数占位符。
indicesInteger[]从插入的行返回的列索引。

返回

JdbcPreparedStatement - 包含预编译 SQL 语句的准备语句,能够返回 自动生成的键(由提供的列索引指定)。


prepareStatementByName(sql, columnNames)

有关此方法的文档,请参阅 java.sql.Connection#prepareStatement(String, String[])

参数

名称类型说明
sqlString可能包含一个或多个“?”的 SQL 语句IN 参数占位符。
columnNamesString[]用于指定方法应从哪些列返回的列名称 插入的一个或多个行。

返回

JdbcPreparedStatement - 包含预编译 SQL 语句的准备语句,能够返回 由提供的列名称指定的自动生成的键。


releaseSavepoint(savepoint)

有关此方法的文档,请参阅 java.sql.Connection#releaseSavepoint(Savepoint)

参数

名称类型说明
savepointJdbcSavepoint要移除的保存点。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

rollback()

如需查看此方法的文档,请参阅 java.sql.Connection#rollback()

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

rollback(savepoint)

有关此方法的文档,请参阅 java.sql.Connection#rollback(Savepoint)

参数

名称类型说明
savepointJdbcSavepoint要回滚到的保存点。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

setAutoCommit(autoCommit)

有关此方法的文档,请参阅 java.sql.Connection#setAutoCommit(boolean)

参数

名称类型说明
autoCommitBoolean如果为 true,则启用自动提交模式;false 会停用。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

setCatalog(catalog)

有关此方法的文档,请参阅 java.sql.Connection#setCatalog(String)

参数

名称类型说明
catalogString要在其中执行下列操作的目录(连接的数据库中的子空间)的名称: 工作。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

setHoldability(holdability)

有关此方法的文档,请参阅 java.sql.Connection#setHoldability(int)

参数

名称类型说明
holdabilityInteger使用此名称创建的 JdbcResultSet 对象的默认保全性 连接;Jdbc.ResultSet.HOLD_CURSORS_OVER_COMMITJdbc.ResultSet.CLOSE_CURSORS_AT_COMMIT

setReadOnly(readOnly)

有关此方法的文档,请参阅 java.sql.Connection#setReadOnly(boolean)

参数

名称类型说明
readOnlyBoolean如果为 true,则表示启用只读模式;false 会停用。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

setSavepoint()

如需查看此方法的文档,请参阅 java.sql.Connection#setSavepoint()

返回

JdbcSavepoint - 未命名的新保存点。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

setSavepoint(name)

有关此方法的文档,请参阅 java.sql.Connection#setSavepoint(String)

参数

名称类型说明
nameString已创建的保存点的名称。

返回

JdbcSavepoint - 新的已命名保存点。

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request

setTransactionIsolation(level)

有关此方法的文档,请参阅 java.sql.Connection#setTransactionIsolation(int)

参数

名称类型说明
levelInteger要设置的交易级别,可为以下项之一:Jdbc.Connection.TRANSACTION_READ_UNCOMMITTEDJdbc.Connection.TRANSACTION_READ_COMMITTEDJdbc.Connection.TRANSACTION_REPEATABLE_READJdbc.Connection.TRANSACTION_SERIALIZABLEJdbc.Connection.TRANSACTION_NONE

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/script.external_request