Saltar al contenido principal
Esta página no tiene versión en español, así que te la mostramos en inglés.

mysql Adaptor developer README.md

Source: https://github.com/OpenFn/adaptors/tree/main/packages/mysql

Language MySQL

Language Pack for building expressions and operations to run MySQL queries.

Documentation​

View the docs site for full technical documentation.

Configuration​

View all the required and optional properties for state.configuration in the official configuration-schema definition.

Execute a query​

Execute an sql query with the node mysql package.

query({
sql: state => {
return `select * from ${state.data.table} where id = ?;`;
},
timeout: 4000,
values: ['007'],
});

Execute a sql query​

This function takes either a string or a function that takes states and returns a string.

sqlString(state => {
return (
`INSERT INTO untitled_table (name, the_geom) VALUES ('` +
state.data.version +
`', ` +
dataValue('form.Choix_tache')(state) +
`)`
);
});

Insert a single record​

This function is used to insert a single record in a MySQL database.

insert(
'some_table',
fields(
field('firstname', dataValue('form.patient_firstname')),
field('lastname', dataValue('form.patient_lastname'))
)
);

Insert or update a single record​

This function is used to insert a single record in a MySQL database or update it if there is a match.

upsert(
'some_table',
fields(
field('firstname', dataValue('form.patient_firstname')),
field('lastname', dataValue('form.patient_lastname'))
)
);

Upsert many records​

This function allows the upsert of a set of records inside a table all at once.

upsertMany(
'users', // the DB table
[
{ name: 'one', email: 'one@openfn.org' },
{ name: 'two', email: 'two@openfn.org' },
]
);

or

upsertMany('users', state =>
state.data.users.map(user => {
name: user['name'],
email: user['email']
})
);

Development​

Clone the adaptors monorepo. Follow the Getting Started guide inside to get set up.

Run tests using pnpm run test or pnpm run test:watch

Build the project using pnpm build.

To just build the docs run pnpm build docs