Gestione dati SQL sql-data-management
L'attività Gestione dati SQL consente di scrivere script SQL personalizzati per creare e popolare tabelle di lavoro.
Prerequisiti prerequisites
Prima di configurare l’attività, assicurati di soddisfare i seguenti prerequisiti:
- L’attività è disponibile solo per le origini dati remote.
- Lo schema in uscita deve esistere nel database ed essere collegato a un database FDA.
Configurazione dell'attività di gestione dati SQL configuring-the-sql-data-management-activity
-
Specificare l'attività Label.
-
Seleziona External account da utilizzare, quindi seleziona Outbound schema collegato a questo account esterno.
note caution CAUTION Lo schema In uscita è fisso e non può essere modificato. -
Aggiungere lo script SQL.
note caution CAUTION È responsabilità dell'autore dello script SQL verificare che lo script SQL sia funzionale e che i relativi riferimenti (nomi dei campi, ecc.) sono conformi allo schema In uscita. Per caricare un codice SQL esistente, selezionare l'opzione The SQL script is contained in an entity stored in the database. Gli script SQL devono essere creati e memorizzati nel menu Administration / Configuration / SQL scripts.
In caso contrario, digitare o copiare e incollare lo script SQL nell'area dedicata.
L’attività ti consente di utilizzare le seguenti variabili nello script:
-
activity.tableName: nome SQL della tabella di lavoro in uscita.
-
task.incomingTransitionByName('name').tableName: Nome SQL della tabella di lavoro della transizione in ingresso da utilizzare (la transizione è identificata dal relativo nome).
note note NOTE Il valore ('name') corrisponde al campo Name delle proprietà di transizione.
-
-
Se lo script SQL contiene già comandi per la creazione di una tabella di lavoro in uscita, deselezionare l'opzione Automatically create work table. In caso contrario, una tabella di lavoro viene creata automaticamente una volta eseguito il flusso di lavoro.
-
Fare clic su Ok per confermare la configurazione dell'attività.
L’attività adesso è configurata. È pronto per essere eseguito nel flusso di lavoro.
Esempi di script SQL sql-script-samples
Lo script sottostante consente di creare una tabella di lavoro e di inserire dati nella stessa tabella di lavoro:
CREATE UNLOGGED TABLE <%= activity.tableName %> (
iRecipientId INTEGER DEFAULT 0,
sFirstName VARCHAR(100),
sMiddleName VARCHAR(100),
sLastName VARCHAR(100),
sEmail VARCHAR(100)
);
INSERT INTO <%= activity.tableName %>
SELECT iRecipientId, sFirstName, sMiddleName, sLastName, sEmail
FROM nmsRecipient
GROUP BY iRecipientId, sFirstName, sMiddleName, sLastName, sEmail;
Lo script seguente consente di eseguire un'operazione CTAS (CREATE TABLE AS SELECT) e di creare un indice della tabella di lavoro:
CREATE TABLE <%= activity.tableName %>
AS SELECT iRecipientId, sEmail, sFirstName, sLastName, sMiddleName
FROM nmsRecipient
WHERE sEmail IS NOT NULL
GROUP BY iRecipientId, sEmail, sFirstName, sLastName, sMiddleName;
CREATE INDEX ON <%= activity.tableName %> (sEmail);
ANALYZE <%= activity.tableName %> (sEmail);
Lo script sottostante consente di unire due tabelle di lavoro:
CREATE TABLE <%= activity.tableName %>
AS SELECT i1.sFirstName, i1.sLastName, i2.sEmail
FROM <%= task.incomingTransitionByName('input1').tableName %> i1
JOIN <%= task.incomingTransitionByName('input2').tableName %> i2 ON (i1.id = i2.id)