เข้าถึงและแก้ไขตารางแหล่งข้อมูลที่มีอยู่ หากต้องการสร้างตารางแหล่งข้อมูลใหม่บนชีตใหม่ ให้ใช้ Spreadsheet.insertSheetWithDataSourceTable(spec)
ใช้คลาสนี้กับข้อมูลที่เชื่อมต่อกับฐานข้อมูลเท่านั้น
ตัวอย่างนี้แสดงวิธีสร้างตารางแหล่งข้อมูลใหม่
SpreadsheetApp.enableBigQueryExecution(); var spreadsheet = SpreadsheetApp.getActive(); var spec = SpreadsheetApp.newDataSourceSpec() .asBigQuery() .setProjectId('big_query_project') .setRawQuery('select @FIELD from table limit @LIMIT') .setParameterFromCell('FIELD', 'Sheet1!A1') .setParameterFromCell('LIMIT', 'namedRangeCell') .build(); // Starts data execution asynchronously. var dataSheet = spreadsheet.insertSheetWithDataSourceTable(spec); var dataSourceTable = dataSheet.getDataSourceTables()[0]; // waitForCompletion() blocks script execution until data execution completes. dataSourceTable.waitForCompletion(60); // Check status after execution. Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());
ตัวอย่างนี้แสดงวิธีแก้ไขแหล่งข้อมูล
SpreadsheetApp.enableBigQueryExecution(); var dataSheet = SpreadsheetApp.getActive().getSheetByName("Data Sheet 1"); var dataSourceTable = dataSheet.getDataSourceTables()[0]; var dataSource = dataSourceTable.getDataSource(); var newSpec = dataSource.getSpec() .copy() .asBigQuery() .setRawQuery('select name from table limit 2') .removeAllParameters() .build(); // Updates data source specification and starts data execution asynchronously. dataSource.updateSpec(newSpec); // Check status during execution. Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState()); // waitForCompletion() blocks script execution until data execution completes. dataSourceTable.waitForCompletion(60); // Check status after execution. Logger.log("Data execution state: %s.", dataSourceTable.getStatus().getExecutionState());
วิธีการ
วิธีการ | ประเภทการแสดงผล | รายละเอียดแบบย่อ |
---|---|---|
addColumns(columnNames) | DataSourceTable | เพิ่มคอลัมน์ในตารางแหล่งข้อมูล |
addFilter(columnName, filterCriteria) | DataSourceTable | เพิ่มตัวกรองที่ใช้กับตารางแหล่งข้อมูล |
addSortSpec(columnName, ascending) | DataSourceTable | เพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล |
addSortSpec(columnName, sortOrder) | DataSourceTable | เพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล |
forceRefreshData() | DataSourceTable | รีเฟรชข้อมูลของออบเจ็กต์นี้โดยไม่คํานึงถึงสถานะปัจจุบัน |
getColumns() | DataSourceTableColumn[] | เพิ่มคอลัมน์แหล่งข้อมูลทั้งหมดลงในตารางแหล่งข้อมูล |
getDataSource() | DataSource | รับแหล่งข้อมูลที่ออบเจ็กต์ลิงก์ |
getFilters() | DataSourceTableFilter[] | แสดงผลตัวกรองทั้งหมดที่ใช้กับตารางแหล่งข้อมูล |
getRange() | Range | รับ Range ตารางแหล่งข้อมูลนี้ที่ครอบคลุม |
getRowLimit() | Integer | แสดงผลขีดจํากัดแถวสําหรับตารางแหล่งข้อมูล |
getSortSpecs() | SortSpec[] | รับข้อกําหนดในการจัดเรียงทั้งหมดในตารางแหล่งข้อมูล |
getStatus() | DataExecutionStatus | รับสถานะการเรียกใช้ข้อมูลของออบเจ็กต์ |
isSyncingAllColumns() | Boolean | แสดงผลว่าตารางแหล่งข้อมูลซิงค์คอลัมน์ทั้งหมดในแหล่งข้อมูลที่เกี่ยวข้องหรือไม่ |
refreshData() | DataSourceTable | รีเฟรชข้อมูลของออบเจ็กต์ |
removeAllColumns() | DataSourceTable | นําคอลัมน์ทั้งหมดในตารางแหล่งข้อมูลออก |
removeAllSortSpecs() | DataSourceTable | นําข้อกําหนดการจัดเรียงทั้งหมดในตารางแหล่งข้อมูลออก |
setRowLimit(rowLimit) | DataSourceTable | อัปเดตจํานวนแถวสูงสุดสําหรับตารางแหล่งข้อมูล |
syncAllColumns() | DataSourceTable | ซิงค์คอลัมน์ปัจจุบันและอนาคตทั้งหมดในแหล่งข้อมูลที่เชื่อมโยงกับตารางแหล่งข้อมูล |
waitForCompletion(timeoutInSeconds) | DataExecutionStatus | รอจนกว่าการดําเนินการปัจจุบันจะเสร็จสมบูรณ์และจะหมดเวลาหลังจากจํานวนวินาทีที่ระบุ |
เอกสารประกอบโดยละเอียด
addColumns(columnNames)
เพิ่มคอลัมน์ในตารางแหล่งข้อมูล
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnNames | String[] | รายการชื่อคอลัมน์ที่จะเพิ่ม |
ไปกลับ
DataSourceTable
— ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addFilter(columnName, filterCriteria)
เพิ่มตัวกรองที่ใช้กับตารางแหล่งข้อมูล
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnName | String | ชื่อของคอลัมน์ที่จะใช้ตัวกรองนี้ |
filterCriteria | FilterCriteria | เกณฑ์การกรองที่จะใช้ |
ไปกลับ
DataSourceTable
— ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addSortSpec(columnName, ascending)
เพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnName | String | ชื่อของคอลัมน์ที่จะจัดเรียง |
ascending | Boolean | หาก true ให้จัดเรียงคอลัมน์จากน้อยไปหามาก หาก false ให้จัดเรียงคอลัมน์จากมากไปหาน้อย |
ไปกลับ
DataSourceTable
— ชีตแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
addSortSpec(columnName, sortOrder)
เพิ่มข้อกําหนดในการจัดเรียงในคอลัมน์ในตารางแหล่งข้อมูล
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
columnName | String | ชื่อของคอลัมน์ที่จะจัดเรียง |
sortOrder | SortOrder | ลําดับการจัดเรียง |
ไปกลับ
DataSourceTable
— ชีตแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
forceRefreshData()
รีเฟรชข้อมูลของออบเจ็กต์นี้โดยไม่คํานึงถึงสถานะปัจจุบัน ดูรายละเอียดเพิ่มเติมได้ที่
refreshData()
ส่งข้อยกเว้นหากไม่ได้เปิดใช้ประเภทแหล่งข้อมูล ใช้ SpreadsheetApp#enable...Execution()
วิธีเพื่อเปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูลเฉพาะประเภท
ไปกลับ
DataSourceTable
— ออบเจ็กต์ข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getColumns()
เพิ่มคอลัมน์แหล่งข้อมูลทั้งหมดลงในตารางแหล่งข้อมูล
ไปกลับ
DataSourceTableColumn[]
— รายการคอลัมน์ของตารางแหล่งข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getDataSource()
รับแหล่งข้อมูลที่ออบเจ็กต์ลิงก์
ไปกลับ
DataSource
— แหล่งข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getFilters()
แสดงผลตัวกรองทั้งหมดที่ใช้กับตารางแหล่งข้อมูล
ไปกลับ
DataSourceTableFilter[]
— อาร์เรย์ของตัวกรองทั้งหมดที่ใช้กับตารางแหล่งข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getRange()
getRowLimit()
แสดงผลขีดจํากัดแถวสําหรับตารางแหล่งข้อมูล
ไปกลับ
Integer
— จํานวนแถวสูงสุดสําหรับตารางแหล่งข้อมูล หรือ null
หากไม่มีการตั้งค่าขีดจํากัด และตารางจะใช้ขีดจํากัดสูงสุดเริ่มต้นเช่นเดียวกับใน UI ของ Google ชีต
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getSortSpecs()
รับข้อกําหนดในการจัดเรียงทั้งหมดในตารางแหล่งข้อมูล
ไปกลับ
SortSpec[]
— รายการข้อมูลจําเพาะของการจัดเรียง
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
getStatus()
รับสถานะการเรียกใช้ข้อมูลของออบเจ็กต์
ไปกลับ
DataExecutionStatus
— สถานะการประมวลผลข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
isSyncingAllColumns()
แสดงผลว่าตารางแหล่งข้อมูลซิงค์คอลัมน์ทั้งหมดในแหล่งข้อมูลที่เกี่ยวข้องหรือไม่
ไปกลับ
Boolean
- True
หากตารางแหล่งข้อมูลซิงค์คอลัมน์ทั้งหมดในแหล่งข้อมูลที่เกี่ยวข้อง หรือไม่เช่นนั้น false
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
refreshData()
รีเฟรชข้อมูลของออบเจ็กต์
ส่งข้อยกเว้นหากปัจจุบันมีสถานะerror
ใช้ DataSource#updateSpec()
เพื่ออัปเดตข้อกําหนด วิธีการนี้เหมาะสําหรับ forceRefreshData()
ซึ่งป้องกันการแก้ไขข้อมูลต้นฉบับโดยไม่คาดคิด
ส่งข้อยกเว้นหากไม่ได้เปิดใช้ประเภทแหล่งข้อมูล ใช้ SpreadsheetApp#enable...Execution()
วิธีเพื่อเปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูลเฉพาะประเภท
ไปกลับ
DataSourceTable
— ออบเจ็กต์ข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeAllColumns()
นําคอลัมน์ทั้งหมดในตารางแหล่งข้อมูลออก
ไปกลับ
DataSourceTable
— ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
removeAllSortSpecs()
นําข้อกําหนดการจัดเรียงทั้งหมดในตารางแหล่งข้อมูลออก
ไปกลับ
DataSourceTable
— ชีตแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
setRowLimit(rowLimit)
อัปเดตจํานวนแถวสูงสุดสําหรับตารางแหล่งข้อมูล หากขีดจํากัดแถวที่ระบุคือ null
ให้อัปเดตตารางแหล่งข้อมูลเพื่อใช้ขีดจํากัดจํานวนแถวสูงสุดเริ่มต้น เช่นเดียวกับใน UI ของ Google ชีต
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
rowLimit | Integer | ขีดจํากัดแถวใหม่สําหรับตารางข้อมูล หากเป็น null ให้อัปเดตตารางเพื่อใช้ขีดจํากัดแถวเริ่มต้น |
ไปกลับ
DataSourceTable
— ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
syncAllColumns()
ซิงค์คอลัมน์ปัจจุบันและอนาคตทั้งหมดในแหล่งข้อมูลที่เชื่อมโยงกับตารางแหล่งข้อมูล
ไปกลับ
DataSourceTable
— ตารางแหล่งข้อมูลสําหรับเชนธุรกิจ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets
waitForCompletion(timeoutInSeconds)
รอจนกว่าการดําเนินการปัจจุบันจะเสร็จสมบูรณ์และจะหมดเวลาหลังจากจํานวนวินาทีที่ระบุ ส่งข้อยกเว้นหากการดําเนินการไม่เสร็จสมบูรณ์เมื่อหมดเวลา แต่ไม่ยกเลิกการประมวลผลข้อมูล
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
---|---|---|
timeoutInSeconds | Integer | เวลาที่ต้องใช้ในการเรียกใช้ข้อมูลในหน่วยวินาที ความยาวสูงสุด 300 วินาที |
ไปกลับ
DataExecutionStatus
— สถานะการประมวลผลข้อมูล
การให้สิทธิ์
สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/spreadsheets.currentonly
-
https://www.googleapis.com/auth/spreadsheets