
# 通过SQL语句查询华为云Astro轻应用对象数据
华为云Astro轻应用低代码平台支持使用SQL语句，查询数据。使用SQL查询数据，可以简洁直观的查看数据表。本节主要为您介绍如何使用控制台、脚本以及服务编排查询数据。查询数据一般是基于对象的查询，以查询Class对象（实际创建的对象名为*命名空间__*Class__CST）为例进行介绍。进行查询操作前，需要先在Class对象中，新建自定义字段，并添加数据。
#### 使用控制台查询对象数据
1. 参考[登录华为云Astro轻应用应用设计器](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9004.html)中操作，登录应用设计器。
2. 在左侧导航栏中，单击"命令行"，进入命令行控制台。
3. 在"对象管理"的命令行输入区，输入SQL语句，例如"select *命名空间* __number__CST from *命名空间*__Class__CST"。
4. 单击页面右上角的"执行"，即可显示查询的字段列。 
   图1执行SQL查询对象"Account"数据   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894141044.png "点击放大")
   
   
 
#### 使用脚本查询对象数据
新建一个脚本，使用脚本查询自定义对象Class（*命名空间*__Class__CST）中数据。
1. 参考[登录华为云Astro轻应用应用设计器](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9004.html)中操作，登录应用设计器。
2. 在左侧导航栏中，单击"逻辑"。
3. 单击脚本后的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894141100.png)，进入新建脚本页面。
4. 设置脚本名称为"search_data"，单击"添加"。 
   图2新增search_data脚本   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000002093923972.png "点击放大")
   
   
5. 在脚本编辑器中，输入以下代码，单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001936100685.png)。
   
   脚本是使用execute接口执行的SQL语句，脚本执行后，可以在脚本底部"日志"页签中，查看执行结果。示例脚本中，*"CNAME"*为命名空间名称，请根据实际环境进行替换。
   ```
   import * as db from 'db';
   import * as es from 'es';
    
   @useObject(['命名空间__Class__CST'])
    
   @action.object({ type: "param" })
   export class Input { }
   @action.object({ type: "param" })
   export class Output { }
    
   @action.object({ type: 'method' })
   export class SearchScript {
       @action.method({ input: 'ParamsInput', output: 'ParamsOutput' })
       public run(input: Input): Output {
           let out = new Output()
           this.doSearchScript();
           return out;
       }
       private doSearchScript() {
           let sql = db.sql();
           let sqlTest = "select name,命名空间__number__CST from 命名空间__Class__CST "
               + "where 命名空间__number__CST > ?"
           let result = db.sql().exec(sqlTest, { params: [0] })
           console.log("result", result)
       }
   }
   ```
   
   
6. 单击页面上方的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001936100653.png)后，单击页面右下方的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894141036.png)，执行脚本，并在"日志"页签，查看执行后结果。
 
#### 使用服务编排查询对象数据
使用服务编排中"记录查询"图元，查询自定义对象Class（*命名空间*__Class__CST）中数据。
1. 参考[登录华为云Astro轻应用应用设计器](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9004.html)中操作，登录应用设计器。
2. 在左侧导航栏中，选择"逻辑"。
3. 单击编排后的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894300964.png)，进入新建服务编排页面。
4. 设置服务编排的标签和名称为"flowSearchData"，单击"添加"。 
   图3设置服务编排信息   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000002197921553.png "点击放大")
   
   
5. 在服务编排设计器中，单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894300940.png)，在全局上下文中创建变量"name"、"number"，类型分别为"文本"、"数字"。
   
   图4创建变量   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894301016.png)
   
   
6. 在服务编排的"基本"图元目录下，拖拽一个"记录查询"到画布中。 
   图5拖拽记录查询到画布中   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894300968.jpg "点击放大")
   
   
7. 参考[图6]，配置对象和输出。
   
   图6配置"记录查询"   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000002129639765.png "点击放大")
   
   
8. 连接开始图元和记录查询图元，配置服务编排出参。 
   图7配置服务编排出参   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001936100625.png "点击放大")
   
   
9. 配置完成后，单击页面上方的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894300980.png)，保存服务编排。
10. 单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894300944.png)，运行服务编排。
11. 本服务编排中不需要输入参数，直接单击"运行"，查看输出的json格式结果。 
    图8服务编排实现查询自定义对象的字段   
    ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894300992.png)
    
    
 
