# Table APIs
 #### insert
**描述**：用于将Dataset插入到数据库表中。
**语法格式**：
```
insert(data, overwrite=False)
```
**输入参数**：
| 参数            | 是否必选 | 参数类型              | 描述                                                         |
|:---|:---|:---|:---|
| data        | 是    | dataset.Dataset | 要插入的Dataset对象，必须是aura_frame.multimodal.dataset.Dataset类型。 |
| overwrite | 否   | bool               | 是否覆盖已存在的数据，默认为False。                                       |
   
**返回值类型**：None。
 #### show
**描述**：用于显示表的前N行数据。
**语法格式**：
```
show(limit=10)
```
**输入参数**：
| 参数   | 是否必选 | 参数类型 | 描述             |
|:---|:---|:---|:---|
| limit | 否   | int   | 限制输出的行数，默认为10。 |
   
**返回值类型**：None。
 #### to_dataset
**描述**：将当前表对象转换为Dataset对象。
**语法格式**：
```
to_dataset()
```
**输入参数**：无
**返回值类型**：Dataset
 #### add_columns
**描述**：向表中添加一个或多个新列。
**语法格式**：
```
add_columns(new_cols)
```
**输入参数**：
| 参数      | 是否必选 | 参数类型             | 描述                             |
|:---|:---|:---|:---|
| new_cols | 是    | Dict\[str, str\] | 要添加的列的字典，键为列名（str），值为列类型（str）。 |
   
**返回值类型**：None。
 #### drop_columns
**描述**：用于从表中删除一个或多个列。
**语法格式**：
```
drop_columns(*columns)
```
**输入参数**：
| 参数         | 是否必选 | 参数类型 | 描述               |
|:---|:---|:---|:---|
| \*columns | 是      | str | 要删除的列名，可以是多个字符串参数。 |
   
**返回值类型**：None。
 #### alter_column_type
**描述**：修改表中指定列的数据类型。
**语法格式**：
```
alter_column_type(column_name, new_type)
```
**输入参数**：
| 参数          | 是否必选 | 参数类型 | 描述         |
|:---|:---|:---|:---|
| column_name | 是     | str | 要修改类型的列名。 |
| new_type  | 是  | str  | 新的数据类型名称。 |
   
**返回值类型**：None。
 #### rename_column
**描述**：重命名表中的列名。
**语法格式**：
```
rename_column(column_name, new_name)
```
**输入参数**：
| 参数       | 是否必选 | 参数类型   | 描述   |
|:---|:---|:---|:---|
| column_name | 是   | str | 当前列名。 |
| new_name   | 是    | str   | 新列名。  |
   
**返回值类型**：None。
 #### delete
**描述**：从表中删除满足指定条件的数据。
**语法格式**：
```
delete(where)
```
**输入参数**：
| 参数   | 是否必选 | 参数类型 | 描述                    |
|:---|:---|:---|:---|
| where | 是 | str  | SQL WHERE子句：用于指定删除条件。 |
   
**返回值类型**：None。
 #### update
**描述**：更新表中满足指定条件的行数据。
**语法格式**：
```
update(values_expr, where)
```
**输入参数**：
| 参数        | 是否必选 | 参数类型                                                             | 描述                                       |
|:---|:---|:---|:---|
| values_expr | 是   | Dict\[str, ValueExpression\]                                     | 键为列名（str），值为用于更新该列的表达式（ValueExpression）。 |
| where     | 否    | Union\[ir.BooleanValue, list\[ir.BooleanValue\], IfAnyAll, None\] | 用于过滤要更新的行的条件。如果为None，则更新所有行。            |
   
**返回值类型**：None。
 #### create_table
**描述**：在指定数据库中创建一个新表。
**语法格式**：
```
create_table(name, /, *, schema, table_format, database=None, temp=False, external=False, overwrite=False, if_not_exists=False, partition_by=None, table_properties=None, location=None)
```
**输入参数**：
| 参数               | 是否必选 | 参数类型                       | 描述                          |
|:---|:---|:---|:---|
| name            | 是 | str                      | 表的名称。                      |
| schema            | 是 | ibis.Schema              | 表的定义。                       |
| table_format      | 是  | str                       | 表的存储格式。                   |
| database          | 否  | Optional\[str\]          | 要创建表的数据库名称。如果未指定，则使用默认数据库。 |
| temp              | 否    | bool                     | 如果为True，则创建临时表。              |
| external       | 否   | bool                     | 如果为True，则创建外部表。              |
| overwrite       | 否  | bool                      | 如果为True，则在表已存在时覆盖原表。        |
| if_not_exists   | 否   | bool                    | 如果为True，则仅在表不存在时创建表。       |
| partition_by   | 否  | Optional\[ibis.Schema\] | 用于对表进行分区的架构。               |
| table_properties | 否  | Optional\[dict\]        | 表的其他属性。                     |
| location         | 否 | Optional\[str\]        | 表数据存储的位置。                   |
   
**返回值类型**: Dataset。
 #### delete_table
**描述**：从数据库中删除指定的Dataset。
**语法格式**：
```
delete_table(name, /, *, database=None, if_it_exists=False)
```
**输入参数**：
| 参数         | 是否必选 | 参数类型            | 描述                              |
|:---|:---|:---|:---|
| name        | 是    | str           | 要删除的表的名称。                      |
| database     | 否    | Optional\[str\] | 要删除表的数据库名称。如果未提供，则使用默认数据库。      |
| if_it_exists | 否     | bool            | 如果设置为True，则仅在表存在时删除，避免因不存在而报错。 |
   
**返回值类型** ：str。
 #### describe_table
**描述**：描述指定数据库中的表。
**语法格式**：
```
describe_table(name, /, *, database=None)
```
**输入参数**：
| 参数       | 是否必选 | 参数类型            | 描述         |
|:---|:---|:---|:---|
| name    | 是       | str            | 函数名称。         |
| database | 否    | Optional\[str\] | 表所在的数据库名称。 |
   
**返回值类型**：str，表的元数据信息。
 #### drop_table
**描述**：从指定数据库中删除一个表。
**语法格式**：
```
drop_table(name, *, database=None, force=False)
```
**输入参数**：
| 参数     | 是否必选 | 参数类型            | 描述                                |
|:---|:---|:---|:---|
| name    | 是     | str           | 要删除的表的名称。                        |
| database | 否    | Optional\[str\] | 要删除表的数据库名称。如果未提供，则使用默认数据库。        |
| force    | 否    | bool              | 如果设置为True，则即使表包含数据也会强制删除。默认为False。 |
   
**返回值类型**：None。
 #### list_tables
**描述**：列出指定数据库或默认数据库中的所有表。
**语法格式**：
```
list_tables(database=None)
```
**输入参数**：
| 参数     | 是否必选 | 参数类型              | 描述                        |
|:---|:---|:---|:---|
| database | 否    | Optional\[str\] | 要列出表的数据库名称。如果为None，则使用默认数据库。 |
   
**返回值类型**：list\[tuple\]，包含表名称的元组列表。
 #### open_table
**描述**：打开指定数据库中的表。
**语法格式**：
```
open_table(name, *, database=None)
```
**输入参数**：
| 参数          | 是否必选 | 参数类型           | 描述                        |
|:---|:---|:---|:---|
| name     | 是       | str            | 要打开的表的名称。                  |
| database | 否     | Optional\[str\] | 包含该表的数据库名称。如果未提供，则使用默认数据库。 |
   
**返回值类型** ：Table。
