Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Voor geheugen geoptimaliseerde tabellen, systeemeigen gecompileerde opgeslagen procedures en door de gebruiker gedefinieerde functies bieden geen ondersteuning voor het volledige Transact-SQL oppervlaktegebied dat wordt ondersteund door tabellen op basis van schijven, geïnterpreteerd Transact-SQL opgeslagen procedures en door de gebruiker gedefinieerde functies. Wanneer u een van de niet-ondersteunde functies probeert te gebruiken, retourneert de server een fout.
De tekst van het foutbericht vermeldt het type Transact-SQL instructie (functie, bewerking, optie, bijvoorbeeld) en de naam van de functie of Transact-SQL trefwoord. De meeste niet-ondersteunde functies retourneren fout 10794, waarbij de tekst van het foutbericht de niet-ondersteunde functie aangeeft. De volgende tabellen bevatten de Transact-SQL functies en trefwoorden die kunnen worden weergegeven in de tekst van het foutbericht, evenals de corrigerende actie om de fout op te lossen.
Zie voor meer informatie over ondersteunde functies met tabellen die zijn geoptimaliseerd voor geheugen en systeemeigen gecompileerde opgeslagen procedures:
Databases die gebruikmaken van In-Memory OLTP
De volgende tabel bevat de Transact-SQL functies die niet worden ondersteund en de trefwoorden die kunnen worden weergegeven in de berichttekst van een fout met betrekking tot een In-Memory OLTP-database. De tabel bevat ook de oplossing voor de fout.
| Typologie | Naam | Resolutie / Besluit |
|---|---|---|
| Optie | AUTO_CLOSE | De databaseoptie AUTO_CLOSE=AAN wordt niet ondersteund voor databases met een MEMORY_OPTIMIZED_DATA bestandsgroep. |
| Optie | Bijvoegen_Herstel_Logboek | De optie CREATE-database ATTACH_REBUILD_LOG wordt niet ondersteund voor databases met een MEMORY_OPTIMIZED_DATA bestandsgroep. |
| Eigenschap | MOMENTOPNAME VAN DATABASE | Het maken van momentopnamen van databases wordt niet ondersteund met databases met een MEMORY_OPTIMIZED_DATA bestandsgroep. |
| Eigenschap | Replicatie met behulp van de sync_method 'database snapshot' of 'database snapshot character' | Replicatie met behulp van het sync_method 'momentopname van database' of 'momentopnameteken van database' wordt niet ondersteund voor databases met een MEMORY_OPTIMIZED_DATA bestandsgroep. |
| Eigenschap | DBCC CHECKDB DBCC CHECKTABLE |
DBCC CHECKDB slaat de in de database aanwezige geheugen-geoptimaliseerde tabellen over. DBCC CHECKTABLE mislukt voor tabellen die zijn geoptimaliseerd voor geheugen. |
Memory-Optimized tabellen
De volgende tabel bevat de Transact-SQL functies die niet worden ondersteund en de trefwoorden die kunnen worden weergegeven in de berichttekst van een fout met betrekking tot een tabel die is geoptimaliseerd voor geheugen. De tabel bevat ook de oplossing voor de fout.
| Typologie | Naam | Resolutie / Besluit |
|---|---|---|
| Eigenschap | ON | Tabellen die zijn geoptimaliseerd voor geheugen, kunnen niet worden geplaatst in een bestandsgroep of partitieschema. Verwijder de ON-component uit de instructie CREATE TABLE . Alle tabellen die zijn geoptimaliseerd voor geheugen, worden toegewezen aan de bestandsgroep die is geoptimaliseerd voor geheugen. |
| Gegevenstype | Naam van gegevenstype | Het aangegeven gegevenstype wordt niet ondersteund. Vervang het type door een van de ondersteunde gegevenstypen. Zie Ondersteunde gegevenstypen voor In-Memory OLTP voor meer informatie. |
| Eigenschap | Berekende kolommen |
Van toepassing op: SQL Server 2014 (12.x) en SQL Server 2016 (13.x) Berekende kolommen worden niet ondersteund voor tabellen die zijn geoptimaliseerd voor geheugen. Verwijder de berekende kolommen uit de instructie CREATE TABLE . Azure SQL Database en SQL Server vanaf SQL Server 2017 (14.x) ondersteunen berekende kolommen in tabellen en indexen die zijn geoptimaliseerd voor geheugen. |
| Eigenschap | Replication | Replicatie wordt niet ondersteund met tabellen die zijn geoptimaliseerd voor geheugen. |
| Eigenschap | FILESTREAM | FILESTREAM-opslag wordt niet ondersteund voor kolommen met tabellen die zijn geoptimaliseerd voor geheugen. Verwijder het sleutelwoord FILESTREAM uit de kolomdefinitie. |
| Eigenschap | SPARSE | Kolommen met tabellen die zijn geoptimaliseerd voor geheugen, kunnen niet worden gedefinieerd als SPARSE. Verwijder het trefwoord SPARSE uit de kolomdefinitie. |
| Eigenschap | ROWGUIDCOL | De optie ROWGUIDCOL wordt niet ondersteund voor kolommen met tabellen die zijn geoptimaliseerd voor geheugen. Verwijder het trefwoord ROWGUIDCOL uit de kolomdefinitie. |
| Eigenschap | VREEMDE SLEUTEL |
Van toepassing op: Azure SQL Database en SQL Server vanaf SQL Server 2016 (13.x) Voor geheugen-geoptimaliseerde tabellen worden FOREIGN KEY-beperkingen alleen ondersteund voor vreemde sleutels die verwijzen naar primaire sleutels van andere geheugen-geoptimaliseerde tabellen. Verwijder de beperking uit de tabeldefinitie als de foreign key verwijst naar een unieke beperking. In SQL Server 2014 (12.x) worden beperkingen voor REFERERENDE SLEUTELS niet ondersteund met tabellen die zijn geoptimaliseerd voor geheugen. |
| Eigenschap | geclusterde index | Geef een niet-geclusterde index op. In het geval van een primaire-sleutelindex moet u PRIMAIRE SLEUTEL NIET GECLUSTERD opgeven. |
| Eigenschap | DDL binnen transacties | Voor geheugen geoptimaliseerde tabellen en systeemeigen gecompileerde opgeslagen procedures kunnen niet worden gemaakt of verwijderd in de context van een gebruikerstransactie. Start geen transactie en zorg ervoor dat de sessie-instelling IMPLICIT_TRANSACTIONS uit is voordat u de INSTRUCTIE CREATE of DROP uitvoert. |
| Eigenschap | DDL-triggers | Voor geheugen geoptimaliseerde tabellen en systeemeigen gecompileerde opgeslagen procedures kunnen niet worden gemaakt of verwijderd als er een server- of databasetrigger is voor die DDL-bewerking. Verwijder de server- en databasetriggers bij CREATE/DROP TABLE en CREATE/DROP PROCEDURE. |
| Eigenschap | GEBEURTENISMELDING | Voor geheugen geoptimaliseerde tabellen en systeemeigen gecompileerde opgeslagen procedures kunnen niet worden gemaakt of verwijderd als er een server- of databasegebeurtenismelding is voor die DDL-bewerking. Verwijder de meldingen voor server- en databasegebeurtenissen bij CREATE TABLE of DROP TABLE en CREATE PROCEDURE of DROP PROCEDURE. |
| Eigenschap | FileTable | Tabellen die zijn geoptimaliseerd voor geheugen, kunnen niet worden gemaakt als bestandstabellen. Het argument AS FileTable verwijderen uit de instructie CREATE TABLE |
| Operation | Bijwerken van primaire sleutelkolommen | Primaire-sleutelkolommen in tabellen en tabeltypen die zijn geoptimaliseerd voor geheugen, kunnen niet worden bijgewerkt. Als de primaire sleutel moet worden bijgewerkt, verwijdert u de oude rij en voegt u de nieuwe rij in met de bijgewerkte primaire sleutel. |
| Operation | INDEX MAKEN | Indexen voor tabellen die zijn geoptimaliseerd voor geheugen, moeten inline worden opgegeven met de instructie CREATE TABLE of met de instructie ALTER TABLE . |
| Operation | FULLTEXT-INDEX MAKEN | Fulltext-indexen worden niet ondersteund voor tabellen die zijn geoptimaliseerd voor geheugen. |
| Operation | schemawijziging | Voor geheugen geoptimaliseerde tabellen en systeemeigen gecompileerde opgeslagen procedures bieden geen ondersteuning voor bepaalde schemawijzigingen: Azure SQL Database en SQL Server ondersteunen sinds SQL Server 2017 (14.x) de bewerkingen ALTER TABLE, ALTER PROCEDURE en sp_rename. Andere schemawijzigingen, bijvoorbeeld het toevoegen van uitgebreide eigenschappen, worden niet ondersteund. SQL Server 2016 (13.x): ALTER TABLE- en ALTER PROCEDURE-bewerkingen worden ondersteund. Andere schemawijzigingen, waaronder sp_rename, worden niet ondersteund. SQL Server 2014 (12.x): schemawijzigingen worden niet ondersteund. Als u de definitie van een voor geheugen geoptimaliseerde tabel of systeemeigen opgeslagen procedure wilt wijzigen, verwijdert u eerst het object en maakt u het opnieuw met de gewenste definitie. |
| Operation | TRUNCATE TABLE | De TRUNCATE-bewerking wordt niet ondersteund voor tabellen die zijn geoptimaliseerd voor geheugen. Als u alle rijen uit een tabel wilt verwijderen, verwijdert u alle rijen met de tabelDELETE FROM of verwijdert u de tabel en maakt u de tabel opnieuw. |
| Operation | ALTER AUTHORIZATION | Het wijzigen van de eigenaar van een bestaande voor geheugen geoptimaliseerde tabel of systeemeigen gecompileerde opgeslagen procedure wordt niet ondersteund. Verwijder en maak de tabel of procedure opnieuw aan om de eigenaar te wijzigen. |
| Operation | ALTER SCHEMA | Het overdragen van een bestaande tabel of systeemeigen opgeslagen procedure naar een ander schema wordt niet ondersteund. Verwijder en maak het object opnieuw om het over te zetten tussen schema's. |
| Operation | DBCC CHECKTABLE | DBCC CHECKTABLE wordt niet ondersteund met tabellen die zijn geoptimaliseerd voor geheugen. Als u de integriteit van de controlepuntbestanden op schijf wilt controleren, voert u een back-up uit van de MEMORY_OPTIMIZED_DATA bestandsgroep. |
| Eigenschap | ANSI_PADDING UIT | De sessieoptie ANSI_PADDING moet zijn ingeschakeld bij het maken van tabellen die zijn geoptimaliseerd voor geheugen of systeemeigen gecompileerde opgeslagen procedures. Voer SET ANSI_PADDING ON uit voordat u de CREATE-instructie uitvoert. |
| Optie | DATACOMPRESSIE | Gegevenscompressie wordt niet ondersteund voor tabellen die zijn geoptimaliseerd voor geheugen. Verwijder de optie uit de tabeldefinitie. |
| Eigenschap | DTC | Voor geheugen geoptimaliseerde tabellen en systeemeigen gecompileerde opgeslagen procedures kunnen niet worden geopend vanuit gedistribueerde transacties. Gebruik in plaats daarvan SQL-transacties. |
| Operation | Tabellen die zijn geoptimaliseerd voor geheugen als doel van MERGE | Tabellen die zijn geoptimaliseerd voor geheugen, kunnen niet het doel zijn van een MERGE-bewerking . Gebruik in plaats daarvan INSERT-, UPDATE- en DELETE-instructies . |
Indexen voor Memory-Optimized tabellen
De volgende tabel bevat de Transact-SQL functies en trefwoorden die kunnen worden weergegeven in de berichttekst van een fout met betrekking tot een index in een tabel die is geoptimaliseerd voor geheugen, evenals de corrigerende actie om de fout op te lossen.
| Typologie | Naam | Resolutie / Besluit |
|---|---|---|
| Eigenschap | Gefilterde index | Gefilterde indexen worden niet ondersteund met tabellen die zijn geoptimaliseerd voor geheugen. Laat de WHERE-component weg uit de indexspecificatie. |
| Eigenschap | Opgenomen kolommen | Het opgeven van opgenomen kolommen is niet nodig voor tabellen die zijn geoptimaliseerd voor geheugen. Alle kolommen van de tabel geoptimaliseerd voor geheugen worden impliciet opgenomen in elke index die is geoptimaliseerd voor geheugen. |
| Operation | DROP INDEX | Het verwijderen van indexen voor tabellen die zijn geoptimaliseerd voor geheugen, wordt niet ondersteund. U kunt indexen verwijderen met ALTER TABLE. Voor meer informatie, zie Memory-Optimized Tabellen wijzigen. |
| Indexoptie | Indexoptie | Er wordt slechts één indexoptie ondersteund: BUCKET_COUNT voor HASH-indexen. |
Niet-geclusterde hash-indexen
De volgende tabel bevat de Transact-SQL functies en trefwoorden die kunnen worden weergegeven in de berichttekst van een fout met een niet-geclusterde hash-index, evenals de corrigerende actie om de fout op te lossen.
| Typologie | Naam | Resolutie / Besluit |
|---|---|---|
| Optie | ASC/DESC | Niet-geclusterde hash-indexen worden niet geordend. Verwijder de trefwoorden ASC en DESC uit de indexsleutelspecificatie. |
Natuurlijk gecompileerde opgeslagen procedures en gebruikersgedefinieerde functies
De volgende tabel bevat de Transact-SQL functies en trefwoorden die kunnen worden weergegeven in de berichttekst van een fout met systeemeigen gecompileerde opgeslagen procedures en door de gebruiker gedefinieerde functies, evenals de corrigerende actie om de fout op te lossen.
| Typologie | Eigenschap | Resolutie / Besluit |
|---|---|---|
| Eigenschap | Inline tabelvariabelen | Tabeltypen kunnen niet inline worden gedeclareerd met variabeledeclaraties. Tabeltypen moeten expliciet worden gedeclareerd met behulp van een CREATE TYPE-instructie . |
| Eigenschap | Cursors | Cursors worden niet ondersteund voor of in systeemeigen gecompileerde opgeslagen procedures. Wanneer u de procedure vanaf de client uitvoert, gebruikt u RPC in plaats van de cursor-API. Vermijd met ODBC de Transact-SQL instructie EXECUTE, geef in plaats daarvan de naam van de procedure rechtstreeks op. Wanneer u de procedure uitvoert vanuit een Transact-SQL batch of een andere opgeslagen procedure, vermijdt u het gebruik van een cursor met de systeemeigen gecompileerde opgeslagen procedure. Wanneer u een systeemeigen gecompileerde opgeslagen procedure maakt in plaats van een cursor te gebruiken, gebruikt u op set gebaseerde logica of een WHILE-lus. |
| Eigenschap | Standaardwaarden voor niet-constante parameters | Wanneer u standaardwaarden gebruikt met parameters voor systeemeigen gecompileerde opgeslagen procedures, moeten de waarden constanten zijn. Verwijder jokertekens uit de parameterdeclaraties. |
| Eigenschap | EXTERNAL | Opgeslagen CLR-procedures kunnen niet systeemeigen worden gecompileerd. Verwijder de AS EXTERNAL-component of de optie NATIVE_COMPILATION uit de instructie CREATE PROCEDURE. |
| Eigenschap | Genummerde opgeslagen procedures | Systeemeigen gecompileerde opgeslagen procedures kunnen niet worden genummerd. Verwijder het ;getal uit de CREATE PROCEDURE-opdracht. |
| Eigenschap | INSERT-uitdrukkingen met meerdere rijen ... VALUES-expressies | Kan niet meerdere rijen invoegen met dezelfde INSERT-instructie in een systeemeigen gecompileerde opgeslagen procedure. Maak INSERT-instructies voor elke rij. |
| Eigenschap | Common Table Expressions (CTE's) | Algemene tabelexpressies (CTE) worden niet ondersteund in systeemeigen gecompileerde opgeslagen procedures. De query herschrijven. |
| Eigenschap | COMPUTING | De COMPUTE-component wordt niet ondersteund. Verwijder deze uit de query. |
| Eigenschap | SELECT INTO | De INTO-component wordt niet ondersteund met de SELECT-instructie . Herschrijf de query als INSERT INTOTableSELECT. |
| Eigenschap | onvolledige lijst met kolommen invoegen | In het algemeen moeten in INSERT-instructies waarden worden opgegeven voor alle kolommen in de tabel. Standaardbeperkingen en IDENTITEITSkolommen (1,1) worden echter wel ondersteund voor tabellen die zijn geoptimaliseerd voor geheugen. Deze kolommen kunnen worden weggelaten, en in het geval van IDENTITY-kolommen moeten ze worden weggelaten uit de INSERT-kolomlijst. |
| Eigenschap | Function | Sommige ingebouwde functies worden niet ondersteund in systeemeigen gecompileerde opgeslagen procedures. Verwijder de geweigerde functie uit de opgeslagen procedure. Zie voor meer informatie over ondersteunde ingebouwde functies Ondersteunde functies voor systeemeigen gecompileerde T-SQL-modules of Systeemeigen gecompileerde opgeslagen procedures. |
| Eigenschap | CASE |
Van toepassing op: SQL Server 2014 (12.x) en SQL Server vanaf SQL Server 2016 (13.x) CASE-expressies worden niet ondersteund in query's binnen systeemeigen gecompileerde opgeslagen procedures. Maak query's voor elke case. Zie Een CASE-expressie implementeren in een systeemeigen gecompileerde opgeslagen procedure voor meer informatie. Azure SQL Database en SQL Server vanaf SQL Server 2017 (14.x) ondersteunen CASE-expressies. |
| Eigenschap | INVOEGEN UITVOEREN | Verwijder de verwijzing. |
| Eigenschap | EXECUTE | Alleen ondersteund voor het uitvoeren van systeemeigen gecompileerde opgeslagen procedures en door de gebruiker gedefinieerde functies. |
| Eigenschap | door de gebruiker gedefinieerde aggregaties | Door de gebruiker gedefinieerde statistische functies kunnen niet worden gebruikt in systeemeigen gecompileerde opgeslagen procedures. Verwijder de verwijzing naar de functie uit de procedure. |
| Eigenschap | bladermodusmetagegevens | Systeemeigen gecompileerde opgeslagen procedures bieden geen ondersteuning voor metagegevens van de browsemodus. Zorg ervoor dat de sessieoptie NO_BROWSETABLE is ingesteld op UIT. |
| Eigenschap | DELETE-instructie met FROM-clause | De FROM-component wordt niet ondersteund voor DELETE-instructies met een tabelbron in systeemeigen gecompileerde opgeslagen procedures. DELETE met de FROM-clausule wordt ondersteund wanneer deze wordt gebruikt om de tabel aan te geven waaruit moet worden verwijderd. |
| Eigenschap | BIJWERKEN met FROM-clausule | De FROM-component wordt niet ondersteund voor UPDATE-instructies in systeemeigen gecompileerde opgeslagen procedures. |
| Eigenschap | tijdelijke procedures | Tijdelijke opgeslagen procedures kunnen niet systeemeigen worden gecompileerd. Maak een permanent systeemeigen gecompileerde opgeslagen procedure of een tijdelijke geïnterpreteerde Transact-SQL opgeslagen procedure. |
| Isolatieniveau | NIET-VERZONDEN LEZEN | Het isolatieniveau READ UNCOMMITTED wordt niet ondersteund voor systeemeigen gecompileerde opgeslagen procedures. Gebruik een ondersteund isolatieniveau, zoals SNAPSHOT. |
| Isolatieniveau | VASTGELEGD LEZEN | Het isolatieniveau READ COMMIT wordt niet ondersteund voor systeemeigen gecompileerde opgeslagen procedures. Gebruik een ondersteund isolatieniveau, zoals SNAPSHOT. |
| Eigenschap | tijdelijke tabellen | Tabellen in tempdb kunnen niet worden gebruikt in systeemeigen gecompileerde opgeslagen procedures. Gebruik in plaats daarvan een tabelvariabele of een tabel die is geoptimaliseerd voor geheugen met DUURZAAMHEID=SCHEMA_ONLY. |
| Eigenschap | DTC | Voor geheugen geoptimaliseerde tabellen en systeemeigen gecompileerde opgeslagen procedures kunnen niet worden geopend vanuit gedistribueerde transacties. Gebruik in plaats daarvan SQL-transacties. |
| Eigenschap | UITVOEREN MET OPNIEUW COMPILEREN | De optie WITH RECOMPILE wordt niet ondersteund voor systeemeigen gecompileerde opgeslagen procedures. |
| Eigenschap | Uitvoering vanaf de toegewezen beheerdersverbinding. | Systeemeigen gecompileerde opgeslagen procedures kunnen niet worden uitgevoerd vanuit de toegewezen beheerverbinding (DAC). Gebruik in plaats daarvan een normale verbinding. |
| Operation | savepoint | Systeemeigen gecompileerde opgeslagen procedures kunnen niet worden aangeroepen vanuit transacties met een actief opslagpunt. Verwijder het opslagpunt uit de transactie. |
| Operation | ALTER AUTHORIZATION | Het wijzigen van de eigenaar van een bestaande voor geheugen geoptimaliseerde tabel of systeemeigen gecompileerde opgeslagen procedure wordt niet ondersteund. Verwijder de tabel of procedure en maak deze opnieuw aan om het eigendom te wijzigen. |
| Operator | OPENROWSET | Deze operator wordt niet ondersteund. Verwijder OPENROWSET uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | OPENQUERY | Deze operator wordt niet ondersteund. Verwijder OPENQUERY uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | OPENDATASOURCE | Deze operator wordt niet ondersteund. Verwijder OPENDATASOURCE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | OPENXML | Deze operator wordt niet ondersteund. OpenXML verwijderen uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | CONTAINSTABLE | Deze operator wordt niet ondersteund. Verwijder CONTAINSTABLE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | FREETEXTTABLE | Deze operator wordt niet ondersteund. Verwijder FREETEXTTABLE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Eigenschap | tabelwaardefuncties | Er kan niet naar tabelwaardefuncties worden verwezen vanuit systeemeigen gecompileerde opgeslagen procedures. Een mogelijke tijdelijke oplossing voor deze beperking is het toevoegen van de logica in de tabelwaardefuncties aan de hoofdtekst van de procedure. |
| Operator | CHANGETABLE | Deze operator wordt niet ondersteund. Verwijder CHANGETABLE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | GOTO | Deze operator wordt niet ondersteund. Gebruik andere procedurele constructies, zoals WHILE. |
| Operator | VERSTELLING | Deze operator wordt niet ondersteund. Verwijder OFFSET uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | INTERSECT | Deze operator wordt niet ondersteund. VERWIJDER INTERSECT uit de systeemeigen gecompileerde opgeslagen procedure. In sommige gevallen kan een INNER JOIN worden gebruikt om hetzelfde resultaat te verkrijgen. |
| Operator | EXCEPT | Deze operator wordt niet ondersteund. Verwijder EXCEPT uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | APPLY |
Van toepassing op: SQL Server 2014 (12.x) en SQL Server vanaf SQL Server 2016 (13.x) Deze operator wordt niet ondersteund. Verwijder APPLY uit de systeemeigen gecompileerde opgeslagen procedure. Azure SQL Database en SQL Server vanaf SQL Server 2017 (14.x) ondersteunen de OPERATOR APPLY in systeemeigen gecompileerde modules. |
| Operator | DRAAIEN | Deze operator wordt niet ondersteund. Verwijder PIVOT uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | DRAAIPUNT NIET | Deze operator wordt niet ondersteund. Verwijder UNPIVOT uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | CONTAINS | Deze operator wordt niet ondersteund. Verwijder CONTAINS uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | FREETEXT | Deze operator wordt niet ondersteund. Verwijder FREETEXT uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | TSEQUAL | Deze operator wordt niet ondersteund. Verwijder TSEQUAL uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | GELIJK | Deze operator wordt niet ondersteund. Verwijder LIKE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Operator | VOLGENDE WAARDE VOOR | Er kan niet naar sequenties worden verwezen binnen systeemeigen gecompileerde opgeslagen procedures. Haal de waarde op met behulp van geïnterpreteerde Transact-SQL en geef deze vervolgens door aan de systeemeigen gecompileerde opgeslagen procedure. Zie IDENTITY implementeren in een memory-optimized tabel voor meer informatie. |
| Optie instellen | optie | SET-opties kunnen niet worden gewijzigd binnen systeemeigen gecompileerde opgeslagen procedures. Bepaalde opties kunnen worden ingesteld met de BEGIN ATOMIC-instructie. Zie de sectie over atomische blokken in systeemeigen gecompileerde opgeslagen procedures voor meer informatie. |
| Operand | TABLESAMPLE | Deze operator wordt niet ondersteund. Verwijder TABLESAMPLE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Optie | RECOMPILE | Natuurlijke gecompileerde opgeslagen procedures worden gecompileerd tijdens het aanmaken. Verwijder RECOMPILE uit de proceduredefinitie. U kunt sp_recompile uitvoeren op een systeemeigen opgeslagen procedure, waardoor deze opnieuw wordt gecompileerd bij de volgende uitvoering. |
| Optie | CODERING | Deze optie wordt niet ondersteund. Versleuteling verwijderen uit de proceduredefinitie. |
| Optie | VOOR REPLICATIE | Systeemeigen gecompileerde opgeslagen procedures kunnen niet worden gemaakt voor replicatie. FOR REPLICATIE verwijderd uit de proceduredefinitie. |
| Optie | FOR XML | Deze optie wordt niet ondersteund. Verwijder FOR XML uit de eigen gecompileerde opgeslagen procedure. |
| Optie | VOOR BLADEREN | Deze optie wordt niet ondersteund. Verwijder FOR BROWSE uit de systeemeigen gecompileerde opgeslagen procedure. |
| Meedoe hint | HASH, MERGE | Systeemeigen gecompileerde opgeslagen procedures bieden alleen ondersteuning voor joins van geneste lussen. Hash- en samenvoegingsdeelnames worden niet ondersteund. Verwijder de join hint. |
| Zoektip | Queryhint | Deze queryhint bevindt zich niet in systeemeigen gecompileerde opgeslagen procedures. Zie Queryhints (Transact-SQL) voor ondersteunde queryhints. |
| Optie | PERCENT | Deze optie wordt niet ondersteund met TOP-clausules. Verwijder PERCENT uit de query in de systeemeigen gecompileerde opgeslagen procedure. |
| Optie | MET BANDEN |
Van toepassing op: SQL Server 2014 (12.x) en SQL Server 2016 (13.x) Deze optie wordt niet ondersteund met TOP-clausules. Verwijder WITH TIES uit de query in de systeemeigen gecompileerde opgeslagen procedure. Azure SQL Database en SQL Server vanaf SQL Server 2017 (14.x) ondersteunen TOP WITH TIES. |
| Aggregatiefunctie | Aggregatiefunctie | Niet alle statistische functies worden ondersteund. Zie Ondersteunde functies voor systeemeigen gecompileerde T-SQL-modules voor meer informatie over ondersteunde statistische functies in systeemeigen gecompileerde T-SQL-modules. |
| Rangschikkingsfunctie | Rangschikkingsfunctie | Classificatiefuncties worden niet ondersteund in systeemeigen gecompileerde opgeslagen procedures. Verwijder ze uit de proceduredefinitie. |
| Functie | Function | Deze functie wordt niet ondersteund. Zie Ondersteunde functies voor systeemeigen gecompileerde T-SQL-modules voor meer informatie over ondersteunde functies in systeemeigen gecompileerde T-SQL-modules. |
| Statement | verklaring | Deze verklaring wordt niet ondersteund. Zie Ondersteunde functies voor systeemeigen gecompileerde T-SQL-modules voor meer informatie over ondersteunde functies in systeemeigen gecompileerde T-SQL-modules. |
| Eigenschap | MIN en MAX die worden gebruikt met binaire reeksen en tekenreeksen | De statistische functies MIN en MAX kunnen niet worden gebruikt voor teken- en binaire tekenreekswaarden binnen systeemeigen gecompileerde opgeslagen procedures. |
| Eigenschap | GROEPEREN OP ALLES | ALL kan niet worden gebruikt met GROUP BY-componenten in systeemeigen gecompileerde opgeslagen procedures. Verwijder ALL uit de GROUP BY-component. |
| Eigenschap | GROEP DOOR () | Groeperen op een lege lijst wordt niet ondersteund. Verwijder de GROUP BY-component of neem kolommen op in de groepeerlijst. |
| Eigenschap | uitrol | ROLLUP kan niet worden gebruikt met GROUP BY-componenten in systeemeigen gecompileerde opgeslagen procedures. ROLLUP verwijderen uit de proceduredefinitie. |
| Eigenschap | CUBE | KUBUS kan niet worden gebruikt met GROUP BY-componenten in systeemeigen gecompileerde opgeslagen procedures. Kubus verwijderen uit de proceduredefinitie. |
| Eigenschap | GROEPERINGSSETS | GROUPING SETS kan niet worden gebruikt met GROUP BY-componenten in systeemeigen gecompileerde opgeslagen procedures. GROUPING SETS verwijderen uit de proceduredefinitie. |
| Eigenschap | TRANSACTIE STARTEN, TRANSACTIE DOORVOEREN EN TRANSACTIE TERUGDRAAIEN | Gebruik ATOMIC-blokken om transacties en foutafhandeling te beheren. Zie Atomic Blocks voor meer informatie. |
| Eigenschap | Declaraties van inlinetabelvariabelen. | Tabelvariabelen moeten verwijzen naar expliciet gedefinieerde tabeltypen die zijn geoptimaliseerd voor geheugen. U moet een tabeltype maken dat is geoptimaliseerd voor geheugen en dat type gebruiken voor de declaratie van variabelen in plaats van het type inline op te geven. |
| Eigenschap | Tabellen op basis van schijven | Schijftabellen kunnen niet worden geopend vanuit systeemeigen gecompileerde opgeslagen procedures. Verwijder verwijzingen naar tabellen op basis van schijven uit de systeemeigen gecompileerde opgeslagen procedures. Of migreer de schijftabel(s) naar geoptimaliseerd geheugen. |
| Eigenschap | Views | Weergaven kunnen niet worden geopend vanuit systeemeigen gecompileerde opgeslagen procedures. In plaats van weergaven verwijst u naar de onderliggende basistabellen. |
| Eigenschap | Functies met tabelwaarden |
Van toepassing op: Azure SQL Database en SQL Server vanaf SQL Server 2016 (13.x) Functies met tabelwaarden met meerdere instructies kunnen niet worden geopend vanuit systeemeigen gecompileerde T-SQL-modules. Inline-tabelwaardefuncties worden ondersteund, maar moeten worden gemaakt MET NATIVE_COMPILATION. Van toepassing op: SQL Server 2014 (12.x) Naar tabelwaardefuncties kan niet worden verwezen vanuit systeemeigen gecompileerde T-SQL-modules. |
| Optie | Verwijzing verwijderen | |
| Eigenschap | DDL | Er wordt geen DDL ondersteund in systeemeigen gecompileerde T-SQL-modules. |
| Optie | XML MET STATISTIEKEN | Wordt niet ondersteund. Wanneer u een query uitvoert, waarbij STATISTICS XML is ingeschakeld, wordt de XML-inhoud geretourneerd zonder het onderdeel voor de systeemeigen gecompileerde opgeslagen procedure. |
Transacties die toegang hebben tot memory-geoptimaliseerde tabellen
De volgende tabel bevat de Transact-SQL functies en trefwoorden die kunnen worden weergegeven in de berichttekst van een fout met betrekking tot transacties die toegang hebben tot tabellen die zijn geoptimaliseerd voor geheugen, evenals de corrigerende actie om de fout op te lossen.
| Typologie | Naam | Resolutie / Besluit |
|---|---|---|
| Eigenschap | savepoint | Het maken van expliciete savepoints in transacties die toegang hebben tot tabellen die zijn geoptimaliseerd voor geheugen, wordt niet ondersteund. |
| Eigenschap | gebonden transactie | Gebonden sessies kunnen niet deelnemen aan transacties die toegang hebben tot tabellen die zijn geoptimaliseerd voor geheugen. Bind de sessie niet voordat u de procedure uitvoert. |
| Eigenschap | DTC | Transacties die toegang hebben tot tabellen die zijn geoptimaliseerd voor geheugen, kunnen niet worden gedistribueerd. |