From 99a9b003bcbcf973df5d0ecbdd5f148244ecd8ea Mon Sep 17 00:00:00 2001 From: Jan Prochazka Date: Sun, 12 Apr 2020 18:55:47 +0200 Subject: [PATCH] show create view --- packages/engines/mssql/MsSqlAnalyser.js | 2 +- packages/web/src/appobj/tableAppObject.js | 2 +- packages/web/src/appobj/viewAppObject.js | 4 ++-- packages/web/src/tabs/ViewCreateScriptTab.js | 12 ++++++++++++ packages/web/src/tabs/index.js | 2 ++ 5 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 packages/web/src/tabs/ViewCreateScriptTab.js diff --git a/packages/engines/mssql/MsSqlAnalyser.js b/packages/engines/mssql/MsSqlAnalyser.js index 6ff2fa332..1cc3abf2f 100644 --- a/packages/engines/mssql/MsSqlAnalyser.js +++ b/packages/engines/mssql/MsSqlAnalyser.js @@ -247,7 +247,7 @@ class MsSqlAnalyser extends DatabaseAnalayser { ...row, createSql: getCreateSql(row), columns: viewColumnRows.rows - .filter((col) => (col.objectId = row.objectId)) + .filter((col) => col.objectId == row.objectId) .map(({ isNullable, isIdentity, ...col }) => ({ ...col, notNull: !isNullable, diff --git a/packages/web/src/appobj/tableAppObject.js b/packages/web/src/appobj/tableAppObject.js index a1e69edd5..fcb57bae7 100644 --- a/packages/web/src/appobj/tableAppObject.js +++ b/packages/web/src/appobj/tableAppObject.js @@ -41,7 +41,7 @@ function Menu({ data, makeAppObj, setOpenedTabs }) { <> Open data Open structure - Create SQL + Show CREATE TABLE script ); } diff --git a/packages/web/src/appobj/viewAppObject.js b/packages/web/src/appobj/viewAppObject.js index 9f06e8f80..64bf2d59d 100644 --- a/packages/web/src/appobj/viewAppObject.js +++ b/packages/web/src/appobj/viewAppObject.js @@ -32,12 +32,12 @@ function Menu({ data, makeAppObj, setOpenedTabs }) { openViewDetail(setOpenedTabs, 'TableDataTab', data); }; const handleOpenCreateScript = () => { - openViewDetail(setOpenedTabs, 'TableCreateScriptTab', data); + openViewDetail(setOpenedTabs, 'ViewCreateScriptTab', data); }; return ( <> Open data - Create SQL + Show CREATE VIEW script ); } diff --git a/packages/web/src/tabs/ViewCreateScriptTab.js b/packages/web/src/tabs/ViewCreateScriptTab.js new file mode 100644 index 000000000..78e38f450 --- /dev/null +++ b/packages/web/src/tabs/ViewCreateScriptTab.js @@ -0,0 +1,12 @@ +import React from 'react'; +import useConnectionInfo from '../utility/useConnectionInfo'; +import SqlEditor from '../sqleditor/SqlEditor'; +import useViewInfo from '../utility/useViewInfo'; + +export default function ViewCreateScriptTab({ conid, database, schemaName, pureName }) { + const viewInfo = useViewInfo({ conid, database, schemaName, pureName }); + const connnection = useConnectionInfo(conid); + if (!connnection || !viewInfo) return null; + + return ; +} diff --git a/packages/web/src/tabs/index.js b/packages/web/src/tabs/index.js index 66eb2fb17..c5fd31c3d 100644 --- a/packages/web/src/tabs/index.js +++ b/packages/web/src/tabs/index.js @@ -2,6 +2,7 @@ import TableDataTab from './TableDataTab'; import ViewDataTab from './ViewDataTab'; import TableStructureTab from './TableStructureTab'; import TableCreateScriptTab from './TableCreateScriptTab'; +import ViewCreateScriptTab from './ViewCreateScriptTab'; import QueryTab from './QueryTab'; export default { @@ -10,4 +11,5 @@ export default { TableStructureTab, TableCreateScriptTab, QueryTab, + ViewCreateScriptTab, };