
# 环境变量、作业参数、脚本参数有什么区别和联系？
#### 问题描述
环境变量、作业参数、脚本参数之间的区别与联系，需要具体举例说明下，便于用户理解。
#### 解决方案
工作空间环境变量参数、作业参数、脚本参数均可以配置参数，但作用范围不同；另外如果工作空间环境变量参数、作业参数、脚本参数同名冲突，调用的优先级顺序为：**作业参数 \> 工作空间环境变量参数 \> 脚本参数**。
环境变量、作业参数、脚本参数的介绍和使用方式如下：
- 环境变量中支持定义变量和常量，环境变量的作用范围为当前工作空间。
  - 变量是指不同的空间下取值不同，需要重新配置值，比如"工作空间名称"变量，这个值在不同的空间下配置不一样，导出导入后需要重新进行配置。
  
  - 常量是指在不同的空间下都是一样的，导入的时候，不需要重新配置值。
  
  
  图1环境变量   
  ![](https://support.huaweicloud.com/dataartsstudio_faq/zh-cn_image_0000001986386613.png "点击放大")
  
  
- 作业参数中支持定义参数和常量，作业参数的作用范围为当前作业。
  - 参数是指不同的作业下取值不同，需要重新配置值，导出导入后需要重新进行配置。
  
  - 常量是指在不同的作业下都是一样的，导入的时候，不需要重新配置值。
  
  
  图2作业参数   
  ![](https://support.huaweicloud.com/dataartsstudio_faq/zh-cn_image_0000001952867212.png "点击放大") 
- 脚本参数支持如下使用方式，脚本参数的作用范围为当前脚本。
  - SQL脚本支持在脚本编辑器中直接输入参数（Flink SQL不支持），脚本独立执行时可通过编辑器下方配置，如[图3]所示；通过作业调度时可通过节点属性赋值，如[图4]所示。
  
  - Shell脚本可以配置参数和交互式参数以实现参数传递功能。
  
  - Python脚本可以配置参数和交互式参数以实现支持参数传递功能。
  
  
  图3独立执行时的脚本参数   
  ![](https://support.huaweicloud.com/dataartsstudio_faq/zh-cn_image_0000001986386617.png "点击放大")
  图4作业调度时的脚本参数   
  ![](https://support.huaweicloud.com/dataartsstudio_faq/zh-cn_image_0000001986506477.png "点击放大") 
 
