Class DataSourceSpecBuilder

資料來源規格建構工具

DataSourceSpec 的建構工具。如要為特定類型建立規格,請使用 as...() 方法。如要建立新的建構工具,請使用 SpreadsheetApp.newDataSourceSpec()。如要使用規格,請參閱 DataSourceTable

請僅將此類別用於與資料庫連結的資料。

本範例說明如何建構 BigQuery 資料來源規格。

const 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 物件。

const 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()

取得 BigQuery 資料來源的建構工具。

回攻員

BigQueryDataSourceSpecBuilder:BigQuery 資料來源規格設定建構工具。


asLooker()

取得 Looker 資料來源的建構工具。

const spec = SpreadsheetApp.newDataSourceSpec()
                 .asLooker()
                 .setInstanceUrl('https://looker_instance_url.com')
                 .setModelName('model_name')
                 .setExploreName('explore_name')
                 .build();

回攻員

LookerDataSourceSpecBuilder:Looker 資料來源規格產生器。


build()

根據這個建構工具中的設定,建構資料來源規格。必須使用 as...() 指定資料來源類型,才能進行建構。

以下程式碼範例會建構 BigQuery 資料來源規格。

const 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 資料來源規格。

const lookerDataSourceSpecBuilder =
    SpreadsheetApp.newDataSourceSpec().asLooker();
const 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',
);
const spec = ss.getDataSources()[0].getSpec();

const 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',
);
const spec = ss.getDataSources()[0].getSpec();
const 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',
);
const spec = ss.getDataSources()[0].getSpec();
const type = spec.getType();

回攻員

DataSourceType:資料來源類型。


removeAllParameters()

移除所有參數。

const specBuilder = SpreadsheetApp.newDataSourceSpec();
specBuilder.removeAllParameters();

回攻員

DataSourceSpecBuilder:用於鏈結的建構工具。


removeParameter(parameterName)

移除指定的參數。

const specBuilder = SpreadsheetApp.newDataSourceSpec();
specBuilder.removeParameter('x');

參數

名稱類型說明
parameterNameString要移除的參數名稱。

回攻員

DataSourceSpecBuilder:用於鏈結的建構工具。


setParameterFromCell(parameterName, sourceCell)

新增參數,或如果有同名參數,則更新資料來源規格建構工具 (類型為 DataSourceType.BIGQUERY) 的來源儲存格。

這個方法僅適用於 BigQuery 資料來源。

const specBuilder = SpreadsheetApp.newDataSourceSpec().asBigQuery();
specBuilder.setParameterFromCell('x', 'A1');
const bigQuerySpec = specBuilder.build();

參數

名稱類型說明
parameterNameString參數名稱。
sourceCellString來源儲存格,如 A1 符號所示。

回攻員

DataSourceSpecBuilder:用於鏈結的建構工具。