Application Programming Interface Guide > DSL API > Virtual Databases > DSL Syntax
 
DSL Syntax
Using the DSL syntax mentioned below,, the "rest/execute/v1/ actions/dsl/invoke" REST API can be executed to create, upodate and delete virtual databases:
 
DROP VIRTUAL DATABASE (IF EXISTS)? ‘name’
———————————————————————————————————————————————————————————————
CREATE VIRTUAL DATABASE (IF NOT EXISTS)? ‘name’
(SET ANNOTATION ‘this is a virtual db created using DSL api’ | NULL)?
———————————————————————————————————————————————————————————————
ALTER VIRTUAL DATABASE ‘name’ (RENAME AS ‘newName’)?
(SET ANNOTATION ‘this is a virtual db created using DSL api’ | NULL)?
———————————————————————————————————————————————————————————————
SELECT * FROM model.ALL_DATASOURCES WHERE PARENT_PATH = '/services/databases' //to view all published virtual relational datasources
———————————————————————————————————————————————————————————————
//to get the resource properties
SELECT * FROM model.ALL_RESOURCE_PROPERTIES WHERE
METADATA_ID =
(SELECT DATASOURCE_ID FROM model.ALL_DATASOURCES
WHERE DATASOURCE_NAME = 'name' AND //name of virtual db
PARENT_PATH = '/services/databases'); //parent path of the folder
———————————————————————————————————————————————————————————————
//to get database attribute definitions for Composite Database.
SELECT * FROM model.SYS_DATASOURCE_ATTRIBUTE_DEFS WHERE adapter_name = 'COMPOSITE_DATABASE'