Delete command (TMSL)
Applies to: SQL Server 2016 and later Analysis Services Azure Analysis Services Fabric/Power BI Premium
Deletes a database or an object in the current database. It deletes the specified object and all child objects and collections. If the object does not exist, the command raises an error.
Request
The object being deleted is specified by using the object path. For example, deleting a partition requires that you specify the table and database objects that precede it.
{
"delete": {
"object": {
"database": "AdventureworksDW2016",
"table": "Reseller Sales",
"partition": "may2011"
}
}
}
You can delete the following objects:
{
"delete": {
"object": {
"database": "AdventureworksDW2016"
}
}
}
{
"delete": {
"object": {
"database": "AdventureworksDW2016",
"dataSource": "SqlServer localhost AdventureworksDW2016"
}
}
}
{
"delete": {
"object": {
"database": "AdventureworksDW2016",
"table": "Reseller Sales",
}
}
}
{
"delete": {
"object": {
"database": "AdventureworksDW2016",
"table": "Reseller Sales",
"partition": "may2011"
}
}
}
{
"delete": {
"object": {
"database": "AdventureworksDW2016",
"role": "Data Reader"
}
}
}
Response
Returns an empty result when the command succeeds. Otherwise, an XMLA exception is returned.
Examples
Example 1 - Delete a database.
{
"delete": {
"object": {
"database": "AdventureWorksDW2016"
}
}
}
Example 2 - Delete a connection.
{
"delete": {
"object": {
"database": "AdventureWorksDW2016",
"dataSource": "SqlServer localhost AdventureworksDW2016"
}
}
}
Usage (endpoints)
This command element is used in a statement of the Execute Method (XMLA) call over an XMLA endpoint, exposed in the following ways:
As an XMLA window in SQL Server Management Studio (SSMS)
As an input file to the invoke-ascmd PowerShell cmdlet
As an input to an SSIS task or SQL Server Agent job
You can generate a ready-made script for this command from SSMS. For example, you can right-click an existing database > Script > Script Database as > DELETE To.