Come continuare l'esecuzione dello script se la tabella non esiste.Ho suddiviso la mia tabella dati principale in poche tabelle utilizzando la funzione sottoinsieme. Quindi eseguo alcune operazioni e provo a unirle nuovamente utilizzando la funzione di aggiornamento. Ma a volte ho solo un tavolo e talvolta 2 tavoli. Come posso dire allo script di continuare se la seconda tabella non esiste.
// Aggiorna le tabelle dei dati
Tabella dati( "Materiale A") << Aggiorna(
Con( Tabella dati( "Materiale B") ),
Corrispondenza colonne( :SN = :SN )
Come posso dire allo script che se la tabella Materiale A o Materiale B non esiste, continua comunque l'esecuzione.
Analisi e modellazione dei dati di baseR: Come continuare l'esecuzione dello script se la tabella non esiste.Se usi variabili, puoi anche usare Is Empty(dtref)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
Try(dt2 = Open("$SAMPLE_DATA/Big Class Families"));
Show(Is Empty(dt), Is Empty(dt2));
ma potresti dover usare altri metodi, a seconda di dove prendi le tue tabelle (puoi trovare un modo per usare Try() se nient'altro sembra funzionare).
R: Come continuare l'esecuzione dello script se la tabella non esiste.Grazie per le soluzioni e i consigli su come utilizzare le variabili per memorizzare i riferimenti alle tabelle anziché affidarsi ai nomi delle tabelle.
R: Come continuare l'esecuzione dello script se la tabella non esiste.Potresti usare Try-statement oppure potresti controllare se quelle tabelle esistono prima di aggiornare. Personalmente, eseguirei un controllo invece di affidarmi a Try. Inoltre, di solito è meglio usare variabili per memorizzare riferimenti alle tabelle invece di affidarsi ai nomi delle tabelle.
Modifica: l'utilizzo di Try avrebbe un aspetto simile a questo ( https://www.jmp.com/support/help/en/17.2/#page/jmp/throw-and-catch-Exceptions.shtml )
Try(
Data Table("Big Class") << Update(
With(Data Table("Big Class Families")),
Match Columns(:name = :name)
)
);
e controlla i nomi delle tabelle
tablelist = Get Data Table List() << get name;
// Only join if both are found
If(Contains(tablelist, "Big Class") & Contains(tablelist, "Big Class Families"),
Data Table("Big Class") << Update(
With(Data Table("Big Class Families")),
Match Columns(:name = :name)
)
);