Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies to: 
 SQL Server  
 Azure SQL Database 
 Azure SQL Managed Instance
This topic lists the supported DDL constructs for natively compiled T-SQL modules, such as stored procedures, scalar UDFs, inline TVFs, and triggers.
For information on features and T-SQL surface area that can be used as part of natively compiled T-SQL modules, see Supported Features for Natively Compiled T-SQL Modules.
For information about unsupported constructs, see Transact-SQL Constructs Not Supported by In-Memory OLTP.
The following are supported:
- SELECT (Transact-SQL) and INSERT SELECT statements 
- SCHEMABINDING and BEGIN ATOMIC (required for natively compiled stored procedures) - For more information, see Creating Natively Compiled Stored Procedures. 
- NATIVE_COMPILATION - For more information, see Native Compilation of Tables and Stored Procedures. 
- Parameters and variables can be declared as NOT NULL (available only for natively compiled modules: natively compiled stored procedures and natively compiled, scalar user-defined functions). 
- Table-valued parameters. - For more information, see Use Table-Valued Parameters (Database Engine). 
- EXECUTE AS OWNER, SELF, CALLER and user. 
- GRANT and DENY permissions on tables and procedures. - For more information, see GRANT Object Permissions (Transact-SQL) and DENY Object Permissions (Transact-SQL).