Applies to: SQL Server
This system procedure removes an existing binding between a database and a resource pool for purposes of tracking In-Memory OLTP memory usage. If there is no pool currently bound to the specified database, success is returned. When the database is unbound, the previously allocated memory for memory-optimized objects stays allocated to the previous resource pool. You need to restart the database to free up the allocated memory. Once a database is unbound from the resource pool, the binding resorts to the DEFAULT resource pool.
sys.sp_xtp_unbind_db_resource_pool [ @database_name = ] 'database_name' [ ; ]
[ @database_name = ] 'database_name'
The name of an existing In-Memory OLTP enabled database. @database_name is sysname.
If a database was bound to a named resource pool, the procedure returns successfully. However, you must restart the database for unbinding to take effect.
If there is no existing binding for the database specified,
sp_xtp_unbind_db_resource_pool returns success, but gives the informational message:
Msg 41374, Level 16, State 1, Procedure sp_xtp_unbind_db_resource_pool_internal, Line 140. Database 'Hekaton_DB' does not have a binding to a resource pool.
The following code unbinds the database
Hekaton_DB from the In-Memory OLTP resource pool it is bound to. If
Hekaton_DB isn't currently bound to a In-Memory OLTP resource pool, a message is given. The database must be restarted for the unbinding to take effect.
The database specified by @database_name must have a binding to an In-Memory OLTP resource pool.
Requires CONTROL SERVER permission.