GetTableDDL

Restituisce le informazioni della tabella in formato Data Definition Language (DDL) per un elenco di ricorrenze di tabella specificate come array JSON.

Formato 

GetTableDDL ( nomiRicorrenzaTabella ; ignoraErrore )

Parametri 

nomiRicorrenzaTabella - un'espressione di testo per un array JSON delle ricorrenze di tabella da restituire.

ignoraErrore - se impostato su True, restituisce le informazioni DDL per le ricorrenze di tabella che non causano errori. Se False, restituisce informazioni DDL quando nessuna ricorrenza di tabella causa un errore; altrimenti restituisce "?" per indicare un errore e registra le ricorrenze di tabella che hanno causato l'errore nel registro delle chiamate AI (vedere l'istruzione di script Imposta registrazione chiamate AI).

Tipo di dati riportato 

Testo

Creata nella versione 

21.0

Descrizione 

Questa funzione restituisce una rappresentazione DDL delle ricorrenze di tabella specificate. Il DDL è costituito da comandi SQL che possono essere utilizzati per definire lo schema del database (tabelle, campi e relazioni). È possibile fornire il DDL restituito da questa funzione in una richiesta a un modello di AI per creare query SQL utilizzabili per interrogare il database FileMaker Pro. In effetti, questo è ciò che fa l'Esegui ricerca SQL per linguaggio naturale usando la stessa logica di questa funzione per generare il DDL.

Per migliorare la qualità del DDL restituito da questa funzione, seguire i suggerimenti in Migliori metodologie operative per lo schema del database nella generazione di query DDL ed SQL.

Esempio 1 

GetTableDDL ( "[\"Riunioni\", \"Argomenti\"]"; True) restituisce quanto segue per un file FileMaker Pro contenente ricorrenze di tabella denominate Riunioni e Argomenti:

Copia
CREATE TABLE "Riunioni" (
"Title" varchar(),
"Location" varchar(),
"Date" datetime,
"Start Time" datetime,
"End Time" datetime,
"Duration" varchar(),
"Note" varchar(255),
"PrimaryKey" varchar(255), /*Identificativo univoco di ciascun record in questa tabella*/
"CreatedBy" varchar(255), /*Nome account dell'utente che ha creato ciascun record*/
"ModifiedBy" varchar(255), /*Nome account dell'utente che ha modificato per ultimo ciascun record*/
"CreationTimestamp" datetime, /*Data e ora di creazione di ciascun record*/
"ModificationTimestamp" datetime, /*Data e ora dell'ultima modifica di ciascun record*/
"Note_Embedding" varbinary(4096),
PRIMARY KEY (PrimaryKey)
);

CREATE TABLE "Argomenti" (
"ForeignKey" varchar(255), /*Identificativo univoco di ciascun record nella tabella correlata*/
"PrimaryKey" varchar(255), /*Identificativo univoco di ciascun record in questa tabella*/
"ModifiedBy" varchar(255), /*Nome account dell'utente che ha modificato per ultimo ciascun record*/
"ModificationTimestamp" datetime, /*Data e ora dell'ultima modifica di ciascun record*/
PRIMARY KEY (PrimaryKey),
FOREIGN KEY (ForeignKey) REFERENCES Riunioni(PrimaryKey)
);

Nella tabella Riunioni, non sono state impostate annotazioni di campo, quindi sono inclusi tutti i campi. Per i campi con commenti, il testo dei commenti è incluso.

Nella tabella Argomenti, le annotazioni campo sono state impostate per quattro campi, quindi sono inclusi solo quei campi, insieme alle rispettive annotazioni.

Esempio 2 

Attiva la registrazione delle chiamate AI quindi, per un array di nomi di ricorrenze di tabella, controlla se GetTableDDL restituisce un errore con il parametro ignoraErrore impostato su False.

Copia
Imposta registrazione chiamate AI [ Attivata ; Nomefile: "ai-call.log" ; Dettagliato: Disattivata ]
Imposta Variabile [ $tableDDL ; Valore: 
    GetTableDDL ( JSONMakeArray ( "Riunioni,Dipendenti,Info contatto" ; "," ; JSONString ) ; 
    False ) ]
If [ $tableDDL = "?" ]
    Mostra finestra personalizz. [ "Si è verificato un errore. Vedere ai-call.log nella cartella Documenti." ]
Else
    Mostra finestra personalizz. [ $tableDDL ]
End If