Todos los productos
Search
Centro de documentos

:CreateDataSource

Última actualización: Sep 04, 2026

Agrega un origen de datos a DataWorks.

Depuración

OpenAPI Explorer calcula automáticamente el valor de la firma. Para su comodidad, se recomienda llamar a esta operación en OpenAPI Explorer. OpenAPI Explorer genera dinámicamente el código de ejemplo de la operación para diferentes SDK.

Parámetros de solicitud

Parámetro Tipo Obligatorio Ejemplo Descripción
Action String Sí CreateDataSource

La operación que desea ejecutar. Establezca el valor en CreateDataSource.

ProjectId Long Sí 1

El ID del espacio de trabajo de DataWorks al que pertenece el origen de datos. Llame a la operación ListProjects para obtener el ID.

Name String Sí abc

El nombre del origen de datos.

Description String No abc

La descripción del origen de datos.

DataSourceType String Sí rds

El tipo de origen de datos. Valores válidos:

  • odps
  • mysql
  • rds
  • oss
  • sqlserver
  • polardb
  • oracle
  • mongodb
  • emr
  • postgresql
  • analyticdb_for_mysql
  • hybriddb_for_postgresql
  • holo
SubType String No mysql

El subtipo del origen de datos.

  • Este parámetro solo surte efecto si DataSourceType se establece en rds.
  • Si establece DataSourceType en rds, configure este parámetro como mysql, sqlserver o postgresql.
EnvType Integer Sí 1

El entorno donde se usa el origen de datos. Valores válidos: 0 y 1. El valor 0 corresponde al entorno de desarrollo y el valor 1 al entorno de producción.

Content String Sí {"database":"dbname","instanceName":"instancename","password":"password","rdsOwnerId":"123","username":"username"}

Los detalles del origen de datos. Ejemplos de detalles para algunos orígenes de datos comunes:

  • odps
{
  "accessId": "xssssss",
  "accessKey": "xsaxsaxsa",
  "authType": 2,
  "endpoint": "http://service.odps.aliyun.com/api",
  "project": "xsaxsax",
  "tag": "public"
}
  • mysql
{
  "database": "xsaxsa",
  "instanceName": "rm-xsaxsa",
  "password": "xsaxsa",
  "rdsOwnerId": "xasxsa",
  "regionId": "cn-shanghai",
  "tag": "rds",
  "username": "xsaxsa"
}
  • rds
{
  "configType": 1,
  "tag": "rds",
  "database": "xsaxsa",
  "username": "xsaxsa",
  "password": "xssaxsa$32050",
  "instanceName": "rm-xsaxs",
  "rdsOwnerId": "11111111"
}
  • oss
{
  "accessId": "sssssxx",
  "accessKey": "xsaxaxsaxs",
  "bucket": "xsa-xs-xs",
  "endpoint": "http://oss-cn-shanghai.aliyuncs.com",
  "tag": "public"
}
  • sqlserver
{
  "jdbcUrl": "jdbc:sqlserver://xsaxsa-xsaxsa.database.xxx.cn:123;DatabaseName=xsxs-xsxs",
  "password": "sdasda$fs",
  "tag": "public",
  "username": "sxaxacdacdd"
}
  • polardb
{
  "clusterId": "pc-sdadsadsa",
  "database": "dsadsadsa",
  "ownerId": "121212122",
  "password": "sdasdafssa",
  "region": "cn-shanghai",
  "tag": "polardb",
  "username": "asdadsads"
}
  • redis
{    
"password": "xxxxxx",   
 "address":"[{\"host\":\"xxxxxxx.redis.rds.aliyuncs.com\",\"port\":6379}]",    
"tag": "public"
}
  • oracle
{
  "jdbcUrl": "jdbc:oracle:saaa:@xxxxx:1521:PROD",
  "password": "sxasaxsa",
  "tag": "public",
  "username": "sasfadfa"
}
  • mongodb
{
  "address": "[\"xsaxxsa.mongodb.rds.aliyuncs.com:3717\"]",
  "database": "admin",
  "password": "sadsda@",
  "tag": "public",
  "username": "dsadsadas"
}
  • emr
{
  "accessId": "xsaxsa",
  "emrClusterId": "C-dsads",
  "emrResourceQueueName": "default",
  "emrEndpoint": "emr.aliyuncs.com",
  "accessKey": "dsadsad",
  "emrUserId": "224833315798889783",
  "name": "sasdsadsa",
  "emrAccessMode": "simple",
  "region": "cn-shanghai",
  "authType": "2",
  "emrProjectId": "FP-sdadsad"
}
  • postgresql
{
  "jdbcUrl": "jdbc:postgresql://xxxx:1921/ssss",
  "password": "sdadsads",
  "tag": "public",
  "username": "sdsasda"
}
  • analyticdb_for_mysql
{
  "instanceId": "am-sadsada",
  "database": "xsxsx",
  "username": "xsxsa",
  "password": "asdadsa",
  "connectionString": "am-xssxsxs.ads.aliyuncs.com:3306"
}
  • hybriddb_for_postgresql
{
  "connectionString": "gp-xsaxsaxa-master.gpdbmaster.rds.aliyuncs.com",
  "database": "xsaxsaxas",
  "password": "xsaxsaxsa@11",
  "instanceId": "gp-xsaxsaxsa",
  "port": "541132",
  "ownerId": "xsaxsaxsas",
  "username": "sadsad"
}
  • holo
{
  "accessId": "xsaxsaxs",
  "accessKey": "xsaxsaxsa",
  "database": "xsaxsaxsa",
  "instanceId": "xsaxa",
  "tag": "aliyun"
}
  • kafka
{
  "instanceId": "xsax-cn-xsaxsa",
  "regionId": "cn-shanghai",
  "tag": "aliyun",
  "ownerId": "1212121212112"
}

Parámetros de respuesta

Parámetro

Tipo

Ejemplo

Descripción

HttpStatusCode

String

200

El código de estado HTTP.

Data

Long

123

El ID del origen de datos.

RequestId

String

0bc141151593763****

El ID de la solicitud.

Success

Boolean

true

Indica si la solicitud se completó correctamente.

Ejemplos

Solicitudes de ejemplo

http(s)://[Endpoint]/?Action=CreateDataSource
&ProjectId=1
&Name=abc
&Description=abc
&DataSourceType=rds
&SubType=mysql
&EnvType=1
&Content={"database":"dbname","instanceName":"instancename","password":"password","rdsOwnerId":"123","username":"username"}
&Common request parameters

Respuestas correctas de ejemplo

Formato XML

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateDataSourceResponse>
    <HttpStatusCode>200</HttpStatusCode>
    <Data>123</Data>
    <RequestId>0bc141151593763****</RequestId>
    <Success>true</Success>
</CreateDataSourceResponse>

Formato JSON

HTTP/1.1 200 OK
Content-Type:application/json

{
  "HttpStatusCode" : "200",
  "Data" : 123,
  "RequestId" : "0bc141151593763****",
  "Success" : true
}

Códigos de error

Código de estado HTTP

Código de error

Mensaje de error

Descripción

400

Invalid.Tenant.ConnectionNotExists

The connection does not exist.

El origen de datos especificado no existe.

400

Invalid.Tenant.ProjectNotExists

The project does not exist.

El espacio de trabajo especificado no existe.

400

Invalid.Tenant.UserNotInProject

The user is not in the project.

El usuario no está agregado al espacio de trabajo.

400

ConnectionAlreadyExist

The connection with envType %s and name %s already exists.

La cadena de conexión ya existe.

400

DataSource.CheckRamRoleFailure

Failed to check the RAM role. AccountId %s. roleArn %s.

No se pudieron verificar los permisos del origen de datos.

400

DataSource.ConnectionStrProperty.PatternNotMatch

The pattern value %s is invalid. The correct pattern is %s.

Las propiedades de la cadena de conexión del origen de datos no coinciden con las reglas especificadas.

400

Invalid.DataSource.DataSourceTypeNotSupport

The dataSourceType %s and subType %s are not supported.

El tipo de origen de datos no es compatible.

400

MissingParam.ConnectionStr.Property

You must specify property %s required by the data source connection string.

No se especificaron las propiedades obligatorias de la cadena de conexión del origen de datos.

400

Invalid.DataSource.DataSourceTypeNotExist

The data source type %s does not exist.

El tipo de origen de datos especificado no existe.

403

Invalid.Tenant.UserIsNotProjectOwnerOrAdmin

The user is not a project administrator or owner.

El usuario no es propietario ni administrador del espacio de trabajo.

403

Invalid.Tenant.UserNotInTenant

The user is not in tenant.

El usuario no pertenece al inquilino.

Para obtener una lista de códigos de error, consulte Códigos de error del servicio.