diff --git a/forward_engineering/ddlProvider/ddlProvider.js b/forward_engineering/ddlProvider/ddlProvider.js index 541e6f0..d4ae6e2 100644 --- a/forward_engineering/ddlProvider/ddlProvider.js +++ b/forward_engineering/ddlProvider/ddlProvider.js @@ -596,6 +596,7 @@ module.exports = (baseProvider, options, app) => { dbVersion: _.get(viewData, 'schemaData.dbVersion'), }, whereClause: detailsTab.whereClause, + viewAnnotations: detailsTab.viewAnnotations, }; }, @@ -659,6 +660,8 @@ module.exports = (baseProvider, options, app) => { const dbVersion = _.get(viewData, 'modelInfo.dbVersion', ''); const usingTryCatchWrapper = shouldUseTryCatchIfNotExistsWrapper(dbVersion); + const annotations = getAnnotationsString(prepareName)(viewData.viewAnnotations); + let createViewDdl = assignTemplates(templates.createView, { name: viewName, ifNotExists: !usingTryCatchWrapper && viewData.ifNotExist ? ' IF NOT EXISTS' : '', @@ -669,6 +672,7 @@ module.exports = (baseProvider, options, app) => { viewProperties: viewData.viewProperties ? ' \n' + tab(viewData.viewProperties) : '', sharing: viewData.sharing && !viewData.materialized ? ` SHARING=${viewData.sharing}` : '', selectStatement, + annotations: annotations ? `\n\t${annotations}` : '', }); if (usingTryCatchWrapper) { createViewDdl = wrapIfNotExists(createViewDdl, viewData.ifNotExist); diff --git a/forward_engineering/ddlProvider/templates.js b/forward_engineering/ddlProvider/templates.js index 50d5b0b..c31cc41 100644 --- a/forward_engineering/ddlProvider/templates.js +++ b/forward_engineering/ddlProvider/templates.js @@ -29,7 +29,7 @@ module.exports = { alterIndexRebuild: 'ALTER INDEX ${name} REBUILD ${options};', createView: - 'CREATE${orReplace}${force}${viewType}${materialized} VIEW${ifNotExists} ${name} ${sharing}${viewProperties}\n\tAS ${selectStatement}', + 'CREATE${orReplace}${force}${viewType}${materialized} VIEW${ifNotExists} ${name} ${sharing}${viewProperties}${annotations}\n\tAS ${selectStatement}', viewSelectStatement: 'SELECT ${keys}\n\tFROM ${tableName}',