Projectinstellingen (conversie) (SybaseToSQL)
De pagina Conversie van het dialoogvenster Projectinstellingen bevat instellingen die aanpassen hoe SSMA de ASE-syntaxis (SAP Adaptive Server Enterprise) converteert naar SQL Server of Azure SQL.
Het deelvenster Conversie is beschikbaar in de dialoogvensters Projectinstellingen en standaardprojectinstellingen:
Als u instellingen wilt opgeven voor alle SSMA-projecten, selecteert u in het menu Extra de optie Standaardprojectinstellingen, klikt u op Algemeen onder aan het linkerdeelvenster en klikt u vervolgens op Conversie.
Als u instellingen voor het huidige project wilt opgeven, selecteer dan in het menu ExtraProjectinstellingen, klik onderaan het linkerdeelvenster op Algemeen en klik vervolgens op Conversie.
Diverse sectie
@@ERROR
SQL Server/Azure SQL en ASE gebruiken verschillende foutcodes.
Gebruik deze instelling om het type bericht (waarschuwing of fout) op te geven dat SSMA weergeeft in het deelvenster Uitvoer of Foutenlijst wanneer er een verwijzing naar @@ERROR
in de ASE-code wordt aangetroffen.
- Als u Converteren en markeren met waarschuwingselecteert, worden de uitspraken door SSMA geconverteerd en gemarkeerd met waarschuwingsopmerkingen.
- Als u Markeren met foutselecteert, slaat SSMA de conversie over en markeert SSMA de instructies met foutopmerkingen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Converteren en markeren met waarschuwing |
Optimistisch | Converteren en markeren met waarschuwing |
Vol | Markeer als fout |
Conversie van LIKE-operator
Hiermee geeft u op of LIKE
operanden moeten worden geconverteerd om overeen te komen met SAP ASE-gedrag. Het punt is dat ASE afsluitende spaties in een vergelijkbaar patroon verwijdert. De tijdelijke oplossing is het maken van een cast van de juiste expressie tot een gegevenstype met een vaste lengte met een maximale precisie.
- Selecteer eenvoudige conversie om de expressies zonder correctie te converteren.
- Gebruik het ASE-gedrag door Cast naar vaste lengte te selecteren.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Eenvoudige conversie |
Optimistisch | Eenvoudige conversie |
Vol | Omzetten naar een vaste lengte |
Lege tekenreeksen omzetten of casten naar numerieke typen
Hiermee geeft u op hoe lege of lege tekenreeksen binnen CONVERT
of CAST
expressies met numeriek type als gegevenstypeargument moeten worden verwerkt. De volgende opties zijn beschikbaar voor deze instelling:
- Selecteer eenvoudige conversie om de expressies zonder correctie te converteren.
- Als lege tekenreeks als nulgetal is geselecteerd, wordt de tekenreeksparameter
{s}
vervangen door deCASE ltrim(rtrim({s})) WHEN "" THEN 0 else {s} END
-expressie.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Eenvoudige conversie |
Optimistisch | Eenvoudige conversie |
Vol | Lege tekenreeks als nul numeriek |
Samenvoeging van NULL
Met deze instelling wordt aangegeven hoe u tekenreekssamenvoeging converteert met NULL
. De volgende opties kunnen worden ingesteld voor deze specifieke instelling:
- Als de optie Ombreken met de functie ISNULL is geselecteerd, wordt elke niet-constante
string_expression
in de concatenatie omhuld metISNULL(string_expression)
en wordenNULL
s vervangen door een lege tekenreeks. - Huidige syntaxis behouden de oorspronkelijke syntaxis behoudt.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Huidige syntaxis behouden |
Optimistisch | Huidige syntaxis behouden |
Vol | Omwikkelen met de ISNULL-functie |
Conversie van lege tekenreeksen
Met deze instelling wordt aangegeven hoe lege tekenreeksen moeten worden geconverteerd. De volgende opties kunnen worden ingesteld voor deze specifieke instelling:
- Alle tekenreeksexpressies vervangen door spatie
- Lege tekenreeksconstanten vervangen door spatie
Als u het gedrag van SQL Server/Azure SQL wilt gebruiken, selecteert u Huidige syntaxis behouden.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Huidige syntaxis behouden |
Optimistisch | Huidige syntaxis behouden |
Vol | Alle tekenreeksexpressies vervangen door spatie |
CONVERT- en CAST-conversie van binaire tekenreeksen
De conversie van binaire waarden naar getallen kan verschillende waarden retourneren op verschillende platforms. Op x86-processors retourneert CONVERT(integer, 0x00000100)
bijvoorbeeld 65536
in ASE, maar 256
in SQL Server. ASE retourneert ook verschillende waarden, afhankelijk van bytevolgorde.
Gebruik deze instelling om te bepalen hoe SSMA CONVERT
en CAST
expressies converteert die binaire waarden bevatten:
- Selecteer eenvoudige conversie om de expressies zonder waarschuwingen of correcties te converteren. Gebruik deze instelling als u weet dat de ASE-server een bytevolgorde heeft waarvoor geen wijzigingen van de binaire waarde nodig zijn.
- Selecteer Converteren en corrigeren om SSMA te converteren en de expressies te corrigeren voor gebruik op SQL Server. De bytevolgorde in letterlijke constanten wordt omgekeerd. Alle andere binaire waarden (zoals binaire variabelen en kolommen) worden gemarkeerd met fouten. Gebruik deze waarde als u weet dat de ASE-server een bytevolgorde heeft waarvoor wijzigingen in binaire waarden zijn vereist.
Selecteer Converteren en voorzie van een waarschuwing om SSMA de expressies te laten converteren en corrigeren, en alle geconverteerde expressies van waarschuwingsopmerkingen te voorzien.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Converteren en markeren met waarschuwing |
Optimistisch | Eenvoudige conversie |
Vol | Converteren en corrigeren |
Dynamische SQL
Gebruik deze instelling om het type bericht (Waarschuwing of Fout) op te geven dat in SSMA wordt weergegeven in de Uitvoer of Foutenlijst deelvenster wanneer deze dynamische SQL in de ASE-code tegenkomt.
- Als u Converteren en markeren met waarschuwingselecteert, converteert SSMA de dynamische SQL en markeert u deze met waarschuwingsopmerkingen.
- Als u Markeren met foutselecteert, slaat SSMA de conversie over en markeert het de instructies met foutopmerkingen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Converteren en markeren met waarschuwing |
Optimistisch | Converteren en markeren met waarschuwing |
Vol | Als fout markeren |
Conversie voor gelijkheidscontrole
Als in SQL Server/Azure SQL de instelling ANSI_NULLS
is ingeschakeld, retourneert SQL Server/Azure SQL UNKNOWN
wanneer een gelijkheidsvergelijking een NULL
waarde bevat. Als ANSI_NULLS
uitgeschakeld is, retourneren gelijkheidsvergelijkingen met NULL
-waarden waar wanneer zowel de te vergelijken kolom en expressie als de twee expressies beiden NULL
zijn. SAP ASE-gelijkheidsvergelijkingen (ANSINULL OFF
) gedragen zich standaard als SQL Server/Azure SQL met ANSI_NULLS OFF
.
- Als u eenvoudige conversieselecteert, converteert SSMA de ASE-code naar SQL Server/Azure SQL-syntaxis zonder extra controles op
NULL
waarden. Gebruik deze instelling alsANSI_NULLS
isOFF
in SQL Server/Azure SQL of als u gelijkheidsvergelijkingen per geval wilt herzien. - Als u NULL-waardenselecteert, voegt SSMA controles voor
NULL
waarden toe met behulp van deIS NULL
- enIS NOT NULL
-clausules.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Eenvoudige conversie |
Optimistisch | Eenvoudige conversie |
Vol | Null-waarden overwegen |
Tekenreeksen opmaken
SQL Server/Azure SQL biedt geen ondersteuning meer voor het argument format_string
in PRINT
- en RAISERROR
-instructies. Het argument format_string
mag vervangbare parameters rechtstreeks in de tekenreeks plaatsen en vervolgens de parameters tijdens runtime vervangen. In plaats daarvan vereist SQL Server de volledige tekenreeks met behulp van een letterlijke tekenreeks of een tekenreeks die is gebouwd met behulp van een variabele. Zie het onderwerp PRINT (Transact-SQL) voor meer informatie.
Wanneer SSMA een format_string
argument tegenkomt, kan het een letterlijke tekenreeks maken met behulp van de variabelen of een nieuwe variabele maken en een tekenreeks maken met behulp van die variabele.
Als u een letterlijke tekenreeks wilt gebruiken voor
PRINT
- enRAISERROR
functies, selecteert u Nieuwe tekenreeks maken.Als in deze modus een PRINT- of RAISERROR-instructie geen tijdelijke aanduidingen en lokale variabelen gebruikt, is de instructie ongewijzigd. Dubbele procenttekens (%%) worden gewijzigd in één procentteken % in PRINT-tekenreeksen.
Als een PRINT- of RAISERROR-instructie tijdelijke aanduidingen en een of meer lokale variabelen gebruikt, zoals in het volgende voorbeeld:
PRINT 'Total: %1!%%', @percent
SSMA converteert deze naar de volgende syntaxis:
PRINT 'Total: '+ CAST(@percent AS varchar(max)) + '%'
Als
format_string
een variabele is, zoals in de volgende instructie:PRINT @fmt, @arg1, @arg2
SSMA kan geen eenvoudige tekenreeksconversie uitvoeren en moet een nieuwe variabele maken:
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
Wanneer SSMA gebruikmaakt van modus Nieuwe string maken, veronderstelt SSMA dat de SQL Server-optie
CONCAT_NULL_YIELDS_NULL
isOFF
. Daarom controleert SSMA niet op null-argumenten.Als u SSMA een nieuwe variabele wilt laten maken voor elke
PRINT
- enRAISERROR
-instructie en vervolgens die variabele voor de tekenreekswaarde wilt gebruiken, selecteert u Nieuwe variabele maken.Als in deze modus een
PRINT
- ofRAISERROR
-instructie geen tijdelijke aanduidingen en lokale variabelen gebruikt, vervangt SSMA alle dubbele procenttekens (%%
) door één procent tekens om te voldoen aan de SQL Server/Azure SQL-syntaxis.Als voor een
PRINT
- ofRAISERROR
-instructie tijdelijke aanduidingen en een of meer lokale variabelen worden gebruikt, zoals in het volgende voorbeeld:PRINT 'Total: %1!%%', @percent
SSMA converteert deze naar de volgende syntaxis:
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
Als
format_string
een variabele is, zoals in de volgende instructie:PRINT @fmt, @arg1, @arg2
SSMA maakt als volgt een nieuwe variabele, waarbij wordt gecontroleerd op null-waarden in elk argument:
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
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Nieuwe tekenreeks maken |
Optimistisch | Nieuwe tekenreeks maken |
Vol | Nieuwe variabele maken |
Een expliciete waarde invoegen in een tijdstempelkolom
SQL Server/Azure SQL biedt geen ondersteuning voor het invoegen van expliciete waarden in een tijdstempelkolom.
- Als u tijdstempelkolommen wilt uitsluiten van
INSERT
instructies, selecteert u kolomuitsluiten. - Als u telkens een foutbericht wilt afdrukken wanneer een tijdstempelkolom zich in een
INSERT
instructie bevindt, selecteert u Markeren met fout. In deze modus wordenINSERT
instructies niet geconverteerd en gemarkeerd met foutopmerkingen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Uitsluiten kolom |
Optimistisch | Kolom uitsluiten |
Vol | Markeren als fout |
Tijdelijke objecten opslaan die zijn gedefinieerd in procedures
Deze instelling geeft aan of de definities van tijdelijke objecten die in de procedures worden weergegeven, tijdens de conversie moeten worden opgeslagen in de bronmetagegevens.
- Selecteer Ja- om op te slaan in metagegevens.
- Selecteer Geen als de objecten niet hoeven te worden opgeslagen.
Wijze | Waarde |
---|---|
Verstek | Ja |
Optimistisch | Ja |
Vol | Nee |
Conversie van proxytabel
Hiermee geeft u op of ASE-proxytabellen worden geconverteerd naar SQL Server-/Azure SQL-tabellen of niet worden geconverteerd en de code is gemarkeerd met foutopmerkingen.
- Selecteer Converteren om proxytabellen te converteren naar gewone tabellen.
- Selecteer Markeren met fout om de proxytabelcode te markeren met foutopmerkingen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Markeer als fout |
Optimistisch | Markeren als fout |
Vol | Markeer als fout |
RAISERROR-basismedelingnummer
ASE-gebruikersberichten worden opgeslagen in elke database. SQL Server-gebruikersberichten worden centraal opgeslagen en beschikbaar gemaakt via de sys.messages
catalogusweergave. Bovendien beginnen ASE-gebruikersberichten bij 20000
, maar SQL Server-foutberichten beginnen bij 50001
.
Met deze instelling geeft u het nummer op dat moet worden toegevoegd aan het berichtnummer van de ASE-gebruiker om deze te converteren naar een SQL Server-gebruikersbericht. Als uw SQL Server gebruikersberichten bevat in de sys.messages
catalogusweergave, moet u dit nummer mogelijk wijzigen in een hogere waarde. Dit is dus dat de geconverteerde berichtnummers niet conflicteren met bestaande berichtnummers.
Let op het volgende:
- ASE-berichten in het bereik
17000
-19999
zijn afkomstig uit desysmessages
systeemtabel en worden niet geconverteerd. - Als het berichtnummer waarnaar wordt verwezen in de instructie
RAISERROR
een constante is, voegt SSMA het basisberichtnummer toe aan de constante om het nieuwe gebruikersberichtnummer te bepalen. - Als het berichtnummer waarnaar wordt verwezen een variabele of expressie is, maakt SSMA een tussenliggende lokale variabele.
- In optimistische modus, gaat SSMA ervan uit dat de SQL Server-optie
CONCAT_NULL_YIELDS_NULL
OFF
is en geen controles uitvoert opNULL
argumenten. - In volledige moduscontroleert SSMA op
NULL
argumenten. -
RAISERROR
metarg-list
parameter wordt niet geconverteerd.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | 30001 |
Optimistisch | 30001 |
Vol | 30001 |
Systeemobjecten
Gebruik deze instelling om het type bericht (waarschuwing of fout) op te geven dat door SSMA wordt weergegeven in de Output of foutlijst deelvenster wanneer er ASE-systeemobjecten worden gebruikt.
- Als u Converteren en markeren met waarschuwingselecteert, zal SSMA verwijzingen naar systeemobjecten converteren en instructies met waarschuwingsopmerkingen markeren.
- Als u Markeren met foutselecteert, dan zal SSMA geen verwijzingen naar systeemobjecten omzetten en zal het instructies met foutopmerkingen markeren.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Converteren en markeren met waarschuwing |
Optimistisch | Converteren en markeren met waarschuwing |
Vol | Markeer als fout |
Niet-opgeloste id's
Gebruik deze instelling om het type bericht (waarschuwing of fout) op te geven dat door SSMA wordt weergegeven in het deelvenster uitvoer of de foutlijst wanneer een identificator niet kan worden opgelost.
- Als u Converteren en markeren met waarschuwingselecteert, zal SSMA proberen verwijzingen te converteren naar niet-opgeloste identificatoren en zullen instructies worden gemarkeerd met waarschuwingsopmerkingen.
- Als u Markeren met foutselecteert, zal SSMA verwijzingen naar niet-opgeloste identificatoren niet converteren en instructies met foutopmerkingen markeren.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Converteren en markeren met waarschuwing |
Optimistisch | Converteren en markeren met waarschuwing |
Vol | Markeren als fout |
Sectie Systeemfuncties
CHARINDEX, functie
In ASE retourneert CHARINDEX
alleen NULL
als alle invoerexpressies zijn NULL
. SQL Server/Azure SQL retourneert NULL
als een invoerexpressie is NULL
.
- Als u het ASE-gedrag wilt gebruiken, selecteert u de vervangingsfunctie . Alle aanroepen naar
CHARINDEX
functie worden vervangen door een aanroep naarCHARINDEX_VARCHAR
ofCHARINDEX_NVARCHAR
door de gebruiker gedefinieerde functie op basis van het type parameters dat is doorgegeven (gemaakt in de gebruikersdatabase onder de schemanaams2ss
) om het SAP ASE-gedrag te emuleren. - Als u het gedrag van SQL Server/Azure SQL wilt gebruiken, selecteert u Huidige syntaxis behouden.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Huidige syntaxis behouden |
Optimistisch | Huidige syntaxis behouden |
Vol | Functie Vervangen |
Functie DATALENGTH
SQL Server/Azure SQL en ASE verschillen in de waarde die wordt geretourneerd door de DATALENGTH
-functie wanneer de waarde één spatie is. In dit geval retourneert SQL Server/Azure SQL 0
en ASE 1
.
- Als u het ASE-gedrag wilt gebruiken, selecteert u vervangfunctie. Alle aanroepen naar
DATALENGTH
functie worden vervangen doorCASE
expressie om SAP ASE-gedrag te emuleren. - Als u het standaardgedrag van SQL Server/Azure SQL wilt gebruiken, selecteert u Huidige syntaxis behouden.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Huidige syntaxis behouden |
Optimistisch | Huidige syntaxis behouden |
Volledig | Functie Vervangen |
INDEX_COL-functie
ASE ondersteunt een optioneel user_id
argument voor de functie INDEX_COL
; SQL Server/Azure SQL biedt echter geen ondersteuning voor dit argument. Als u het argument user_id
gebruikt, kan deze functie niet worden geconverteerd naar SQL Server/Azure SQL-syntaxis.
- Als u het ASE-gedrag wilt gebruiken, selecteert u de Convert-functie . Als de code het argument
user_id
bevat, wordt er een fout weergegeven in SSMA. - Als u een foutbericht wilt weergeven telkens wanneer
INDEX_COL
wordt aangetroffen, selecteert u Markeren met een fout. SSMA converteert geen verwijzingen naar de functie en markeert de instructie met foutopmerkingen.
Wijze | Waarde |
---|---|
Verstek | Markeren als fout |
Optimistisch | Markeren als fout |
Vol | Markeren als fout |
INDEX_COLORDER-functie
SQL Server/Azure SQL heeft geen INDEX_COLORDER
systeemfunctie.
- Als u het ASE-gedrag wilt gebruiken, selecteert u Converteren-functie. Alle aanroepen naar
INDEX_COLORDER
functie worden vervangen door een aanroep naar een door de gebruiker gedefinieerde functie met dezelfde naamINDEX_COLORDER
(gemaakt in de gebruikersdatabase onder de schemanaams2ss
) die het SAP ASE-gedrag emuleert. - Als u een foutmelding wilt afdrukken telkens wanneer
INDEX_COLORDER
wordt aangetroffen, selecteert u Markeren met een fout. SSMA converteert geen verwijzingen naar de functie en markeert de instructie met foutopmerkingen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Markeren als fout |
Optimistisch | Markeer als fout |
Vol | Als fout markeren |
Functies LINKS en RECHTS
LEFT
en RIGHT
functies in ASE gedragen zich anders voor de parameter negatieve lengte.
- Om gebruik te maken van het ASE-gedrag, selecteert u Functie vervangen. De lengteparameter wordt vervolgens vervangen door
CASE
expressie dieNULL
retourneert voor een negatieve waarde. - Als u het gedrag van SQL Server wilt gebruiken, selecteert u Huidige syntaxis behouden.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Huidige syntaxis behouden |
Optimistisch | Huidige syntaxis behouden |
Vol | Functie Vervangen |
Notitie
Als de lengteparameter een letterlijke waarde is en geen complexe expressie, wordt de lengtewaarde altijd vervangen door NULL
ongeacht de projectinstelling.
NEXT_IDENTITY functie
SQL Server/Azure SQL heeft geen NEXT_IDENTITY
systeemfunctie.
- Als u het ASE-gedrag wilt gebruiken, selecteert u Functie converteren. Alle aanroepen naar
NEXT_IDENTITY
functie worden vervangen door expressies(IDENT_CURRENT(parameter Value) + IDENT_INCR(parameter Value)
die het SAP ASE-gedrag emuleren. - Wanneer u een foutmelding wilt afdrukken telkens wanneer
NEXT_IDENTITY
wordt aangetroffen, selecteert u Markeren met fout. SSMA converteert geen verwijzingen naar de functie en markeert de instructie met foutopmerkingen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Markeren als fout |
Optimistisch | Markeer als fout |
Vol | Markeren als fout |
nl-NL: Standaard/Optimistische/Volledige modus: Markeren met foutmeldingen
PATINDEX-functie
Hiermee geeft u op of PATINDEX
functie moet worden geconverteerd om overeen te komen met het SAP ASE-gedrag. Het punt is dat ASE volgspaties in een zoekpatroon verwijdert. De tijdelijke oplossing is om een typeomzetting te maken naar een gegevenstype met vaste lengte en maximale precisie en om de rtrim
-functie toe te passen op een zoekpatroon.
- Als u het ASE-gedrag wilt gebruiken, selecteert u gebruiken.
- Als u het standaardgedrag van SQL Server/Azure SQL wilt gebruiken, selecteert u Gebruikniet.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Niet gebruiken |
Optimistisch | Niet gebruiken |
Vol | Gebruik |
REPLICEREN-functie
De functie REPLICATE
herhaalt een tekenreeks het opgegeven aantal keren. Als u in ASE opgeeft dat de tekenreeks nul keer moet worden herhaald, wordt het resultaat NULL
. In SQL Server/Azure SQL is het resultaat een lege tekenreeks.
- Als u het ASE-gedrag wilt gebruiken, selecteert u functie vervangen. Alle aanroepen naar
REPLICATE
functie worden vervangen door een aanroep naarREPLICATE_VARCHAR
ofREPLICATE_NVARCHAR
door de gebruiker gedefinieerde functie op basis van het type parameters dat is doorgegeven (gemaakt in de gebruikersdatabase onder de schemanaams2ss
) om het SAP ASE-gedrag te emuleren. - Als u het standaardgedrag van SQL Server/Azure SQL wilt gebruiken, selecteert u Functie vervangen.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Functie Vervangen |
Optimistisch | Functie Vervangen |
Vol | Functie Vervangen |
Functie TRIM (LTRIM, RTRIM)
Met deze instelling geeft u op of aanroepen naar TRIM
, LTRIM
en RTRIM
functies moeten worden vervangen door de equivalente syntaxisfuncties van SAP ASE of om de huidige syntaxis te behouden. De volgende opties zijn aanwezig voor deze specifieke instelling:
- functie vervangen
- Huidige syntaxis behouden
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Functie Vervangen |
Optimistisch | Functie Vervangen |
Vol | Functie Vervangen |
SUBSTRING functie
In ASE retourneert de functie SUBSTRING(expression, start, length)
NULL
als een beginwaarde groter is dan het aantal tekens in de expressie is opgegeven of als de lengte gelijk is aan nul. In SQL Server/Azure SQL retourneert de equivalente expressie een lege tekenreeks.
- Als u het ASE-gedrag wilt gebruiken, selecteert u Vervangen functie. Alle aanroepen naar
SUBSTRING
functie worden vervangen door een aanroep naarSUBSTRING_VARCHAR
ofSUBSTRING_NVARCHAR
ofSUBSTRING_VARBINARY
door de gebruiker gedefinieerde functie op basis van het doorgegeven type parameters (gemaakt in de gebruikersdatabase onder de schemanaams2ss
) om het SAP ASE-gedrag te emuleren. - Als u het gedrag van SQL Server/Azure SQL wilt gebruiken, selecteert u Huidige syntaxis behouden.
Wanneer u een conversiemodus selecteert in het vak Modus, past SSMA de volgende instelling toe:
Wijze | Waarde |
---|---|
Verstek | Huidige syntaxis behouden |
Optimistisch | Huidige syntaxis behouden |
Vol | Functie Vervangen |
Sectie Tabellen
Primaire sleutel toevoegen
Hiermee maakt u een nieuwe primaire sleutel in de SQL Server- of Azure SQL-tabel als een SAP ASE-tabel geen primaire sleutel of unieke index heeft.
Wijze | Waarde |
---|---|
Verstek | Nee |
Optimistisch | Nee |
Vol | Ja |
Notitie
Wanneer u verbinding maakt met Azure SQL, is het standaard Ja.