Impostazioni del progetto (conversione) (SybaseToSQL)
La pagina di conversione della finestra di dialogo Impostazioni progetto contiene le impostazioni per personalizzare il modo in cui SSMA converte la sintassi SAP Adaptive Server Enterprise (ASE) nella sintassi di SQL Server o di Azure SQL.
Il riquadro Conversione è disponibile nelle finestre di dialogo Impostazioni progetto e Impostazioni progetto predefinite:
Se si desidera specificare le impostazioni per tutti i progetti SSMA, scegliere Impostazioni predefinite progetto dal menu Strumenti, fare clic su Generale nella parte inferiore del riquadro a sinistra, quindi su Conversione.
Per specificare le impostazioni per il progetto corrente, scegliere Impostazioni progetto dal menu Strumenti, fare clic su Generale nella parte inferiore del riquadro a sinistra e quindi su Conversione.
Sezione varie
@@ERROR
SQL Server/Azure SQL e ASE usano codici errore diversi.
Usare questa impostazione per specificare il tipo di messaggio (avviso o errore) visualizzato da SSMA nel riquadro Output o Elenco errori quando rileva un riferimento a @@ERROR
nel codice ASE.
- Se si seleziona Converti e contrassegna con avviso, SSMA convertirà le istruzioni e le contrassegnerà con i commenti di avviso.
- Se si seleziona Contrassegna con errore, SSMA ignorerà la conversione e contrassegnerà le istruzioni con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Convertire e contrassegnare con avviso |
Optimistic | Convertire e contrassegnare con avviso |
Completa | Contrassegna con errore |
Conversione dell'operatore LIKE
Specifica se convertire gli operandi LIKE
in modo che corrispondano al comportamento di SAP ASE. Il punto è che ASE taglia gli spazi vuoti finali in un modello simile. La soluzione alternativa consiste nel creare una trasmissione di espressione destra a un tipo di dati a lunghezza fissa con una precisione massima.
- Selezionare Conversione semplice per convertire le espressioni senza alcuna correzione.
- Per usare il comportamento ASE selezionare Trasmetti a lunghezza fissa.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Conversione semplice |
Optimistic | Conversione semplice |
Completa | Trasmissione a lunghezza fissa |
CONVERTI o TRASMETTI stringhe vuote in tipi numerici
Specifica come gestire stringhe vuote o spazi all'interno di espressioni CONVERT
o CAST
con tipo numerico come argomento tipo di dati. Per questa impostazione sono disponibili le seguenti opzioni:
- Selezionare Conversione semplice per convertire le espressioni senza alcuna correzione.
- Se è selezionata l'opzione Stringa vuota come zero numerico, il parametro stringa
{s}
verrà sostituito con l’espressioneCASE ltrim(rtrim({s})) WHEN "" THEN 0 else {s} END
.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Conversione semplice |
Optimistic | Conversione semplice |
Completa | Stringa vuota come zero numerico |
Concatenamento di NULL
Questa impostazione specifica come convertire il concatenamento di stringhe con NULL
. Per questa particolare impostazione è possibile definire le opzioni seguenti:
- Se viene selezionata l'opzione Esegui il wrapping con funzione ISNULL, ogni non costante
string_expression
nel concatenamento verrà sottoposta a wrapping conISNULL(string_expression)
eNULL
verranno sostituiti con una stringa vuota. - Mantenere la sintassi corrente manterrà la sintassi originale.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Mantenere la sintassi corrente |
Optimistic | Mantenere la sintassi corrente |
Completa | Eseguire il wrapping con la funzione ISNULL |
Conversione di stringhe vuote
Questa impostazione specifica come convertire stringhe vuote. Per questa particolare impostazione è possibile definire le opzioni seguenti:
- Sostituire tutte le espressioni stringa con spazio
- Sostituire le costanti stringa vuote con spazio
Per usare il comportamento di SQL Server/Azure SQL, selezionare Mantieni la sintassi corrente.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Mantenere la sintassi corrente |
Optimistic | Mantenere la sintassi corrente |
Completa | Sostituire tutte le espressioni stringa con spazio |
Conversione di stringhe binarie CONVERT e CAST
La conversione di valori binari in numeri può restituire valori diversi in piattaforme diverse. Ad esempio, nei processori x86 CONVERT(integer, 0x00000100)
restituisce 65536
in ASE, ma 256
in SQL Server. Inoltre, ASE restituisce valori diversi a seconda dell'ordine dei byte.
Usare questa impostazione per controllare il modo in cui SSMA converte le espressioni CONVERT
e CAST
che contengono valori binari:
- Selezionare Conversione semplice per convertire le espressioni senza alcun avviso o correzione. Utilizzare questa impostazione se si sa che il server ASE dispone di un ordine dei byte che non richiede alcuna modifica del valore binario.
- Selezionare Converti e correggi per fare in modo che SSMA converta e corregga le espressioni da usare in SQL Server. L'ordine dei byte nelle costanti letterali verrà invertito. Tutti gli altri valori binari (ad esempio variabili e colonne binarie) verranno contrassegnati con errori. Utilizzare questa impostazione se si sa che il server ASE dispone di un ordine dei byte che richiede modifiche del valore binario.
Selezionare Converti e contrassegna con avviso per fare in modo che SSMA converta e corregga le espressioni e contrassegni tutte le espressioni convertite con commenti di avviso.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Convertire e contrassegnare con avviso |
Optimistic | Conversione semplice |
Completa | Convertire e correggere |
SQL dinamica
Usare questa impostazione per specificare il tipo di messaggio (avviso o errore) visualizzato da SSMA nel riquadro Output o Elenco errori quando rileva un SQL dinamico nel codice ASE.
- Se si seleziona Converti e contrassegna con avviso, SSMA convertirà il codice SQL dinamico e contrassegnerà le istruzioni con commenti di avviso.
- Se si seleziona Contrassegna con errore, SSMA ignorerà la conversione e contrassegnerà le istruzioni con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Convertire e contrassegnare con avviso |
Optimistic | Convertire e contrassegnare con avviso |
Completa | Contrassegna con errore |
Conversione del controllo di uguaglianza
In SQL Server/Azure SQL, se l'impostazione ANSI_NULLS
è attivata, SQL Server/Azure SQL restituisce UNKNOWN
quando un confronto di uguaglianza contiene un valore NULL
. Se ANSI_NULLS
è disattivato, i confronti di uguaglianza che contengono valori NULL
restituiscono vero quando la colonna e l'espressione confrontate o due espressioni sono entrambe NULL
. Per impostazione predefinita i confronti di uguaglianza SAP ASE (ANSINULL OFF
) si comportano come SQL Server/Azure SQL con ANSI_NULLS OFF
.
- Se si seleziona Conversione semplice, SSMA convertirà il codice ASE nella sintassi SQL Server/Azure SQL senza controlli aggiuntivi per i valori
NULL
. Usare questa impostazione seANSI_NULLS
si trovaOFF
in SQL Server/Azure SQL o se si desidera rivedere i confronti di uguaglianza in base al caso. - Se si seleziona Considera valori NULL, SSMA aggiungerà i controlli per i valori
NULL
usando le clausoleIS NULL
eIS NOT NULL
.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Conversione semplice |
Optimistic | Conversione semplice |
Completa | Prendere in considerazione i valori NULL |
Stringhe di formato
SQL Server/AZURE SQL non supporta più l'argomento format_string
nelle istruzioni PRINT
e RAISERROR
. L'argomento format_string
consentiva di inserire parametri sostituibili direttamente nella stringa e quindi sostituire i parametri in fase di esecuzione. SQL Server richiede invece la stringa completa usando un valore letterale stringa o una stringa compilata usando una variabile. Per altre informazioni, vedere l'argomento PRINT (Transact-SQL).
Quando SSMA rileva un argomento format_string
, può compilare un valore letterale stringa usando le variabili oppure creare una nuova variabile e compilare una stringa usando tale variabile.
Per usare un valore letterale stringa per le funzioni
PRINT
eRAISERROR
, selezionare Crea nuova stringa.In questa modalità, se un'istruzione PRINT o RAISERROR non usa segnaposto e variabili locali, l'istruzione rimane invariata. I caratteri di percentuale doppia (%%) vengono modificati in carattere a percentuale singola % nei valori letterali stringa PRINT.
Se un'istruzione PRINT o RAISERROR utilizza segnaposto e una o più variabili locali, ad esempio nell'esempio seguente:
PRINT 'Total: %1!%%', @percent
SSMA la convertirà nella sintassi seguente:
PRINT 'Total: '+ CAST(@percent AS varchar(max)) + '%'
Se
format_string
è una variabile, come nell'istruzione seguente:PRINT @fmt, @arg1, @arg2
SSMA non può eseguire una semplice conversione di stringhe e deve creare una nuova variabile:
DECLARE @print_format_1 varchar(max) SET @print_format_1 = REPLACE (@fmt, '%%', '%') SET @print_format_1 = REPLACE (@print_format_1, '%1!', CAST (@arg1 AS varchar(max))) SET @print_format_1 = REPLACE (@print_format_1, '%2!', CAST (@arg2 AS varchar(max))) PRINT @print_format_1
Quando usa la modalità Crea nuova stringa, SSMA presuppone che l'opzione
CONCAT_NULL_YIELDS_NULL
di SQL Server siaOFF
. Pertanto, SSMA non verifica la presenza di argomenti Null.Per fare in modo che SSMA crei una nuova variabile per ogni istruzione
PRINT
eRAISERROR
e quindi usi tale variabile per il valore stringa, selezionare Crea nuova variabile.In questa modalità, se un'istruzione
PRINT
oRAISERROR
non usa segnaposto e variabili locali, SSMA sostituisce tutti i caratteri a percentuale doppia (%%
) con caratteri a percentuale singola per essere conformi alla sintassi SQL Server/Azure SQL.Se un'istruzione
PRINT
oRAISERROR
utilizza segnaposto e una o più variabili locali, come nell'esempio seguente:PRINT 'Total: %1!%%', @percent
SSMA la convertirà nella sintassi seguente:
DECLARE @print_format_1 varchar(max) SET @print_format_1 = 'Total: %1!%' SET @print_format_1 = REPLACE (@print_format_1, '%1!', ISNULL(CAST (@percent AS VARCHAR(max)), '')) PRINT @print_format_1
Se
format_string
è una variabile, come nell'istruzione seguente:PRINT @fmt, @arg1, @arg2
SSMA crea una nuova variabile come indicato di seguito, verificando i valori Null in ogni argomento:
DECLARE @print_format_1 varchar(max) SET @print_format_1 = REPLACE (@fmt, '%%', '%') SET @print_format_1 = REPLACE (@print_format_1, '%1!', ISNULL(CAST (@arg1 AS varchar(max)),'')) SET @print_format_1 = REPLACE (@print_format_1, '%2!', ISNULL(CAST (@arg2 AS varchar(max)),'')) PRINT @print_format_1
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Creare nuova stringa |
Optimistic | Creare nuova stringa |
Completa | Creare nuova variabile |
Inserire un valore esplicito in una colonna di tipo timestamp
SQL Server/Azure SQL non supporta l'inserimento di valori espliciti in una colonna timestamp.
- Per escludere colonne timestamp dalle istruzioni
INSERT
, selezionare Escludi colonna. - Per stampare un messaggio di errore ogni volta che una colonna timestamp si trova in un'istruzione
INSERT
, selezionare Contrassegna con errore. In questa modalità, le istruzioniINSERT
non verranno convertite e saranno contrassegnate con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Escludere colonna |
Optimistic | Escludere colonna |
Completa | Contrassegna con errore |
Archiviare oggetti temporanei definiti nelle procedure
Questa impostazione specifica se le definizioni di oggetti temporanei visualizzate nelle procedure devono essere archiviate nei metadati di origine durante la conversione.
- Selezionare Sì per archiviare nei metadati.
- Selezionare No se gli oggetti non devono essere archiviati.
Modalità | Valore |
---|---|
Default | Sì |
Optimistic | Sì |
Completa | No |
Conversione della tabella proxy
Specifica se le tabelle proxy ASE vengono convertite in tabelle SQL Server/Azure SQL oppure non vengono convertite e il codice viene contrassegnato con commenti di errore.
- Selezionare Converti per convertire le tabelle proxy in tabelle normali.
- Selezionare Contrassegna con errore per contrassegnare semplicemente il codice della tabella proxy con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Contrassegna con errore |
Optimistic | Contrassegna con errore |
Completa | Contrassegna con errore |
Numero di messaggio di base RAISERROR
I messaggi utente ASE vengono archiviati in ogni database. I messaggi utente di SQL Server vengono archiviati e resi disponibili a livello centrale tramite la vista del catalogo sys.messages
. Inoltre, i messaggi utente ASE iniziano da 20000
, ma i messaggi di errore di SQL Server iniziano da 50001
.
Questa impostazione specifica il numero da aggiungere al numero di messaggio utente ASE per convertirlo in un messaggio utente di SQL Server. Se in SQL Server sono presenti messaggi utente nella vista del catalogo sys.messages
, potrebbe essere necessario modificare questo numero impostando un valore superiore. In questo modo i numeri di messaggio convertiti non sono in conflitto con i numeri di messaggio esistenti.
Nota quanto segue:
- I messaggi ASE nell'intervallo
17000
-19999
provengono dalla tabella di sistemasysmessages
e non vengono convertiti. - Se il numero di messaggio a cui viene fatto riferimento nell'istruzione
RAISERROR
è una costante, SSMA aggiungerà il numero del messaggio di base alla costante per determinare il nuovo numero di messaggio utente. - Se il numero di messaggio a cui viene fatto riferimento è una variabile o un'espressione, SSMA creerà una variabile locale intermedia.
- In Modalità optimistic, SSMA presuppone che l'opzione
CONCAT_NULL_YIELDS_NULL
di SQL Server siaOFF
e non esegue controlli per gli argomentiNULL
. - In Modalità estesa, SSMA controlla la presenza di argomenti
NULL
. - L’argomento
RAISERROR
conarg-list
non viene convertito.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | 30001 |
Optimistic | 30001 |
Completa | 30001 |
Oggetti di sistema
Usare questa impostazione per specificare il tipo di messaggio (avviso o errore) visualizzato da SSMA nel riquadro Output o Elenco errori quando rileva l’uso di oggetti di sistema ASE.
- Se si seleziona Converti e contrassegna con avviso, SSMA convertirà i riferimenti agli oggetti di sistema e contrassegnerà le istruzioni con commenti di avviso.
- Se si seleziona Contrassegna con errore, SSMA non convertirà riferimenti in oggetti di sistema e contrassegnerà le istruzioni con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Convertire e contrassegnare con avviso |
Optimistic | Convertire e contrassegnare con avviso |
Completa | Contrassegna con errore |
Identificatori non risolti
Usare questa impostazione per specificare il tipo di messaggio (avviso o errore) visualizzato da SSMA nel riquadro Output o Elenco errori quando non può risolvere un identificatore.
- Se si seleziona Converti e contrassegna con avviso, SSMA tenterà di convertire i riferimenti in identificatori non risolti e contrassegnerà le istruzioni con commenti di avviso.
- Se si seleziona Contrassegna con errore, SSMA non convertirà i riferimenti in identificatori non risolti e contrassegnerà le istruzioni con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Convertire e contrassegnare con avviso |
Optimistic | Convertire e contrassegnare con avviso |
Completa | Contrassegna con errore |
Sezione funzioni di sistema
FUNZIONE CHARINDEX
In ASE CHARINDEX
restituisce NULL
solo se tutte le espressioni di input sono NULL
. SQL Server/Azure SQL restituirà NULL
se un'espressione di input è NULL
.
- Per usare il comportamento ASE, selezionare Sostituisci funzione. Tutte le chiamate alla funzione
CHARINDEX
vengono sostituite con una chiamata a una funzione aCHARINDEX_VARCHAR
oCHARINDEX_NVARCHAR
definita dall'utente in base al tipo di parametri trasmessi (creato nel database utente con il nome dello schemas2ss
) per emulare il comportamento di SAP ASE. - Per usare il comportamento di SQL Server/Azure SQL, selezionare Mantieni la sintassi corrente.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Mantenere la sintassi corrente |
Optimistic | Mantenere la sintassi corrente |
Completa | Sostituisci funzione |
FUNZIONE DATALENGTH
SQL Server/Azure SQL e ASE differiscono nel valore restituito dalla funzione DATALENGTH
quando il valore è uno spazio singolo. In questo caso, SQL Server/Azure SQL restituisce 0
e ASE restituisce 1
.
- Per usare il comportamento ASE, selezionare Sostituisci funzione. Tutte le chiamate alla funzione
DATALENGTH
vengono sostituite con l'espressioneCASE
per emulare il comportamento di SAP ASE. - Per usare il comportamento predefinito di SQL Server/Azure SQL, selezionare Mantieni la sintassi corrente.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Mantenere la sintassi corrente |
Optimistic | Mantenere la sintassi corrente |
Completa | Sostituisci funzione |
Funzione INDEX_COL
ASE supporta un argomento facoltativo user_id
per la funzione INDEX_COL
, ma SQL Server/Azure SQL non supporta questo argomento. Se si usa l'argomento user_id
, questa funzione non può essere convertita in sintassi SQL Server/Azure SQL.
- Per usare il comportamento ASE, selezionare Coverti funzione. Se il codice contiene l'argomento
user_id
, SSMA visualizzerà un errore. - Per visualizzare un messaggio di errore ogni volta che
INDEX_COL
viene rilevato, selezionare Contrassegna con errore. SSMA non convertirà i riferimenti alla funzione e contrassegnerà l'istruzione con commenti di errore.
Modalità | Valore |
---|---|
Default | Contrassegna con errore |
Optimistic | Contrassegna con errore |
Completa | Contrassegna con errore |
Funzione INDEX_COLORDER
SQL Server/Azure SQL non dispone di una funzione di sistema INDEX_COLORDER
.
- Per usare il comportamento ASE, selezionare Coverti funzione. Tutte le chiamate alla funzione
INDEX_COLORDER
vengono sostituite con una chiamata a una funzione definita dall'utente con lo stesso nomeINDEX_COLORDER
(creato nel database utente con il nome dello schemas2ss
) che emula il comportamento di SAP ASE. - Per stampare un messaggio di errore ogni volta che
INDEX_COLORDER
viene rilevato, selezionare Contrassegna con errore. SSMA non convertirà i riferimenti alla funzione e contrassegnerà l'istruzione con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Contrassegna con errore |
Optimistic | Contrassegna con errore |
Completa | Contrassegna con errore |
Funzioni LEFT e RIGHT
Le funzioni LEFT
e RIGHT
in ASE si comportano in modo diverso per il parametro di durata negativa.
- Per usare il comportamento ASE, selezionare Sostituisci funzione. Il parametro durata viene quindi sostituito con l'espressione
CASE
che restituisceNULL
per il valore negativo. - Per usare il comportamento di SQL Server, selezionare Mantieni la sintassi corrente.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Mantenere la sintassi corrente |
Optimistic | Mantenere la sintassi corrente |
Completa | Sostituisci funzione |
Nota
Se il parametro durata è un valore letterale e non un'espressione complessa, il valore durata viene sempre sostituito con NULL
indipendentemente dall'impostazione del progetto.
Funzione NEXT_IDENTITY
SQL Server/Azure SQL non dispone di una funzione di sistema NEXT_IDENTITY
.
- Per usare il comportamento ASE, selezionare Converti funzione. Tutte le chiamate alla funzione
NEXT_IDENTITY
vengono sostituite con l'espressione(IDENT_CURRENT(parameter Value) + IDENT_INCR(parameter Value)
che emula il comportamento di SAP ASE. - Per stampare un messaggio di errore ogni volta che
NEXT_IDENTITY
viene rilevato, selezionare Contrassegna con errore. SSMA non convertirà i riferimenti alla funzione e contrassegnerà l'istruzione con commenti di errore.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Contrassegna con errore |
Optimistic | Contrassegna con errore |
Completa | Contrassegna con errore |
Modalità di impostazione predefinita/ottimistica/estesa: Contrassegna con errore
Funzione PATINDEX
Specifica se convertire la funzione PATINDEX
in modo che corrisponda al comportamento di SAP ASE. Il punto è che ASE taglia gli spazi vuoti finali in un modello di ricerca. La soluzione alternativa consiste nel creare una trasmissione di espressione valore a un tipo di dati a lunghezza fissa con una precisione massima e applica la funzione rtrim
al criterio di ricerca.
- Per usare il comportamento ASE selezionare Usa.
- Per usare il comportamento predefinito di SQL Server/Azure SQL, selezionare Non usare.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Non utilizzare |
Optimistic | Non utilizzare |
Completa | Utilizzo |
REPLICATE - funzione
La funzione REPLICATE
ripete una stringa il numero specificato di volte. In ASE, se si specifica di ripetere la stringa zero volte, il risultato è NULL
. In SQL Server/Azure SQL il risultato è una stringa vuota.
- Per usare il comportamento ASE, selezionare Sostituisci funzione. Tutte le chiamate alla funzione
REPLICATE
vengono sostituite con una chiamata a una funzione aREPLICATE_VARCHAR
oREPLICATE_NVARCHAR
definita dall'utente in base al tipo di parametri trasmessi (creato nel database utente con il nome dello schemas2ss
) per emulare il comportamento di SAP ASE. - Per usare il comportamento predefinito di SQL Server/Azure SQL, selezionare Funzione RIMPIAZZA.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Sostituisci funzione |
Optimistic | Sostituisci funzione |
Completa | Sostituisci funzione |
Funzione TRIM (LTRIM, RTRIM)
Questa impostazione specifica se sostituire le chiamate alle funzioni TRIM
, LTRIM
e RTRIM
con le funzioni di sintassi equivalenti di SAP ASE o mantenere la sintassi corrente. Per questa impostazione particolare sono presenti le opzioni seguenti:
- Sostituisci funzione
- Mantenere la sintassi corrente
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Sostituisci funzione |
Optimistic | Sostituisci funzione |
Completa | Sostituisci funzione |
SUBSTRING - funzione
In ASE la funzione SUBSTRING(expression, start, length)
restituisce NULL
se viene specificato un valore iniziale maggiore del numero di caratteri nell'espressione oppure se la lunghezza è uguale a zero. In SQL Server/Azure SQL l'espressione equivalente restituisce una stringa vuota.
- Per usare il comportamento ASE, selezionare Sostituisci funzione. Tutte le chiamate alla funzione
SUBSTRING
vengono sostituite con una chiamata a una funzione aSUBSTRING_VARCHAR
oSUBSTRING_NVARCHAR
oSUBSTRING_VARBINARY
definita dall'utente in base al tipo di parametri trasmessi (creato nel database utente con il nome dello schemas2ss
) per emulare il comportamento di SAP ASE. - Per usare il comportamento di SQL Server/Azure SQL, selezionare Mantieni la sintassi corrente.
Quando si seleziona una modalità di conversione nella casella Modalità, SSMA applica l'impostazione seguente:
Modalità | Valore |
---|---|
Default | Mantenere la sintassi corrente |
Optimistic | Mantenere la sintassi corrente |
Completa | Sostituisci funzione |
Sezione Tabelle
Aggiungi chiave primaria
Crea una nuova chiave primaria nella tabella SQL Server o Azure SQL se una tabella SAP ASE non ha una chiave primaria o un indice univoco.
Modalità | Valore |
---|---|
Default | No |
Optimistic | No |
Completa | Sì |
Nota
Quando si è connessi ad Azure SQL, per impostazione predefinita è Sì.