Class DataSourceSpec

DataSourceSpec

访问现有数据源规范的常规设置。要访问以下项目的数据源规范: 特定类型,请使用 as...() 方法。如需创建新的数据源规范,请使用 SpreadsheetApp.newDataSourceSpec()

请仅将此类与连接到数据库的数据搭配使用。

以下示例展示了如何从 BigQuery 数据源规范中获取信息。

var dataSourceTable =
    SpreadsheetApp.getActive().getSheetByName("Data Sheet 1").getDataSourceTables()[0];
var spec = dataSourceTable.getDataSource().getSpec();
if (spec.getType() == SpreadsheetApp.DataSourceType.BIGQUERY) {
  var bqSpec = spec.asBigQuery();
  Logger.log("Project ID: %s\n", bqSpec.getProjectId());
  Logger.log("Raw query string: %s\n", bqSpec.getRawQuery());
}

此示例展示了如何从 Looker 数据源规范中获取信息。使用 asLooker() 会返回一个 LookerDataSourceSpec 对象。

// 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().asLooker();

if (spec.getType() == SpreadsheetApp.DataSourceType.LOOKER) {
  var lookerSpec = spec.asLooker();
  Logger.log("Looker instance URL: %s\n", lookerSpec.getInstanceUrl());
}

方法

方法返回类型简介
asBigQuery()BigQueryDataSourceSpec获取 BigQuery 数据源的规范。
asLooker()LookerDataSourceSpec获取 Looker 数据源的规范。
copy()DataSourceSpecBuilder根据此数据源的设置创建 DataSourceSpecBuilder
getParameters()DataSourceParameter[]获取数据源的参数。
getType()DataSourceType获取数据源的类型。

详细文档

asBigQuery()

获取 BigQuery 数据源的规范。

返回

BigQueryDataSourceSpec - BigQuery 数据源规范。


asLooker()

获取 Looker 数据源的规范。

// 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().asLooker();

返回

LookerDataSourceSpec - Looker 数据源规范。


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 - 数据源类型。