DataSourceSpec
的构建器。如需针对特定类型创建规范,请使用 as...()
方法。如需创建新的构建器,请使用 SpreadsheetApp.newDataSourceSpec()
。如需使用该规范,请参阅 DataSourceTable
。
请仅将此类与连接到数据库的数据搭配使用。
以下示例展示了如何构建 BigQuery 数据源规范。
var spec = SpreadsheetApp.newDataSourceSpec() .asBigQuery() .setProjectId('big_query_project') .setRawQuery('select @FIELD from table limit @LIMIT') .setParameterFromCell('FIELD', 'Sheet1!A1') .setParameterFromCell('LIMIT', 'namedRangeCell') .build();
以下示例展示了如何构建 Looker 数据源规范。它会在使用 build()
后返回一个 LookerDataSourceSpec
对象。
var spec = SpreadsheetApp.newDataSourceSpec() .asLooker() .setInstanceUrl('https://looker_instance_url.com') .setModelName('model_name') .setExploreName('explore_name') .build();
方法
方法 | 返回类型 | 简介 |
---|---|---|
asBigQuery() | BigQueryDataSourceSpecBuilder | 获取 BigQuery 数据源的构建器。 |
asLooker() | LookerDataSourceSpecBuilder | 获取 Looker 数据源的构建器。 |
build() | DataSourceSpec | 通过此构建器中的设置构建数据源规范。 |
copy() | DataSourceSpecBuilder | 根据此数据源的设置创建 DataSourceSpecBuilder 。 |
getParameters() | DataSourceParameter[] | 获取数据源的参数。 |
getType() | DataSourceType | 获取数据源的类型。 |
removeAllParameters() | DataSourceSpecBuilder | 移除所有参数。 |
removeParameter(parameterName) | DataSourceSpecBuilder | 删除指定的参数。 |
setParameterFromCell(parameterName, sourceCell) | DataSourceSpecBuilder | 添加参数;如果存在具有该名称的参数,则更新类型为 DataSourceType.BIGQUERY 的数据源规范构建器的来源单元格。 |
详细文档
asBigQuery()
asLooker()
获取 Looker 数据源的构建器。
var spec = SpreadsheetApp.newDataSourceSpec() .asLooker() .setInstanceUrl('https://looker_instance_url.com') .setModelName('model_name') .setExploreName('explore_name') .build();
返回
LookerDataSourceSpecBuilder
- Looker 数据源规范构建器。
build()
通过此构建器中的设置构建数据源规范。必须先使用 as...()
指定数据源类型,然后才能构建。
以下代码示例构建了一个 BigQuery DataSource 规范。
var bigQueryDataSourceSpec = SpreadsheetApp.newDataSourceSpec().asBigQuery(); // TODO(developer): Replace with the required dataset, project and table IDs. bigQueryDataSourceSpec.setDatasetId("my data set id"); bigQueryDataSourceSpec.setProjectId("my project id"); bigQueryDataSourceSpec.setTableId("my table id"); bigQueryDataSourceSpec.build();
以下代码示例构建了一个 Looker DataSource 规范。
var lookerDataSourceSpecBuilder = SpreadsheetApp.newDataSourceSpec().asLooker(); var lookerSpec = lookerDataSourceSpecBuilder.setExploreName("my explore name") .setInstanceUrl("my instance url") .setModelName("my model name") .build();
返回
DataSourceSpec
- 数据源规范。
copy()
根据此数据源的设置创建 DataSourceSpecBuilder
。
// TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); var spec = ss.getDataSources()[0].getSpec(); var newSpec = spec.copy();
返回
DataSourceSpecBuilder
- 构建器。
getParameters()
获取数据源的参数。
// TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); var spec = ss.getDataSources()[0].getSpec(); var parameters = spec.getParameters();
此方法仅适用于 BigQuery 数据源。
返回
DataSourceParameter[]
- 参数列表。
getType()
获取数据源的类型。
// TODO(developer): Replace the URL with your own. const ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/abc123456/edit'); var spec = ss.getDataSources()[0].getSpec(); var type = spec.getType();
返回
DataSourceType
- 数据源类型。
removeAllParameters()
移除所有参数。
var specBuilder = SpreadsheetApp.newDataSourceSpec(); specBuilder.removeAllParameters();
返回
DataSourceSpecBuilder
- 用于链接的构建器。
removeParameter(parameterName)
移除指定的参数。
var specBuilder = SpreadsheetApp.newDataSourceSpec(); specBuilder.removeParameter("x");
参数
名称 | 类型 | 说明 |
---|---|---|
parameterName | String | 要移除的参数的名称。 |
返回
DataSourceSpecBuilder
- 用于链接的构建器。
setParameterFromCell(parameterName, sourceCell)
添加参数;如果存在具有该名称的参数,则更新其源单元格以获取数据
DataSourceType.BIGQUERY
类型的源代码规范构建器。
此方法仅适用于 BigQuery 数据源。
var specBuilder = SpreadsheetApp.newDataSourceSpec().asBigQuery(); specBuilder.setParameterFromCell("x", "A1"); var bigQuerySpec = specBuilder.build();
参数
名称 | 类型 | 说明 |
---|---|---|
parameterName | String | 参数名称。 |
sourceCell | String | 源单元格,采用 A1 表示法表示。 |
返回
DataSourceSpecBuilder
- 用于链接的构建器。