更新数据表和列类型
使用该接口可以更新数据表名称和已有列的配置
请求
curl -vvv -X PATCH "$API_HOST/open/api/v1/tablenodes/$table_id/" -H "Authorization: $access-token" -d "projectID=$project_id&name=$name" -F "columns=@$file_path"
请求体form-data示例
Key | Value | 必需 | 备注 |
---|---|---|---|
projectID | 264 | 是 | 项目 ID |
name | 数据表名称 | 否 | 名称和列配置至少有一项 |
columns | table1update.json | 否 | 需更新到列配置json文件:列ID可从创建接口返回值中获取 |
Python 示例
def table_update(access_token, project_id, table_id, name, columns):
data = {
'projectID': project_id,
'name': name
}
files = {
'columns': io.StringIO(json.dumps(columns)),
}
headers = {'Authorization': access_token}
url = '%s/open/api/v1/tablenodes/%d/' % (API_HOST, table_id)
response = requests.patch(url, headers=headers, files=files, data=data)
return response.json()
ws_resp = ma.get_workspace_detail(access_token, workspace)
project = ws_resp['detail']['detail']['projects'][0]
# create table using csv
data = {
'projectID': project['id'],
'name': 'test-csv-upload',
'skipFirstRow': True
}
resp = ma.create_table(access_token, data,
'data/create_table_columns.json',
'data/gd.csv')
table = resp['detail']
resp = ma.read_table(access_token, table['id'], '', '')
columns = resp['detail']['columns']
name_id = [i['id'] for i in resp['detail']['columns'] if i['name'] == 'Name'][0]
columns_new = [
{
'id': name_id,
'name': '名称'
}
]
resp = ma.table_update(access_token, project['id'], table['id'],
'new-table-name', columns_new)
响应
响应体
部分主要信息说明
名称 | 类型 | 描述 |
---|---|---|
detail | object | |
∟updatedTableNode | object | 更新的数据表 |
∟ updatedFields | object | 更新的数据表元信息字段 |
∟ updatedColumns | array | 更新的所有列 |
∟ columnID | string | 列ID |
∟ updatedFields | object | 更新的列的元信息字段 |
∟ updatedCells | map | 由列更新导致的值发生变化的所有单元格 |
∟invalidedColumns | array | 出错的计算列 |
响应体示例
{
"code": 0,
"detail": {
"updatedTableNode": {
"id": 980,
"projectID": 264,
"updatedFields": {
"name": "newName"
}
},
"updatedColumns": [
{
"projectID": 264,
"tableNodeID": 980,
"columnID": "625914457cff69c01aed2d71",
"updatedFields": {
"name": "Title3"
},
"updatedCells":null,
"invalidedColumns": []
},
{
"projectID": 264,
"tableNodeID": 980,
"columnID": "625914457cff69c01aed2d72",
"updatedFields": {
"name": "Region3"
},
"updatedCells":null,
"invalidedColumns": []
},
{
"projectID": 264,
"tableNodeID": 980,
"columnID": "625914457cff69c01aed2d74",
"updatedFields": {
"name": "FAR",
"type": "number",
"typeOptions": {
"precision": 2,
"format": "number"
}
},
"updatedCells": {
"625914457cff69c01aed2d80": {
"625914457cff69c01aed2d74": 2.2
},
"625914457cff69c01aed2d85": {
"625914457cff69c01aed2d74": 2.4
},
"625914fa7cff69c01aed2e43": {
"625914457cff69c01aed2d74": 1.6
},
"625914fa7cff69c01aed2e44": {
"625914457cff69c01aed2d74": 2
},
"625914fa7cff69c01aed2e45": {
"625914457cff69c01aed2d74": 2.18
},
"625931df04b5540935aef0e0": {
"625914457cff69c01aed2d74": 2.5
},
"625931df04b5540935aef0e1": {
"625914457cff69c01aed2d74": 2.9
},
"625931df04b5540935aef0e2": {
"625914457cff69c01aed2d74": 2.4
},
"625931df04b5540935aef0e9": {
"625914457cff69c01aed2d74": 1.8
}
},
"invalidedColumns": []
}
]
},
"extra":null,
"message": "OK",
"requestID":null
}