refactoring of sql console into separate widgets

This commit is contained in:
zadam
2020-12-29 22:27:31 +01:00
parent 1d64129572
commit 02d9752abf
12 changed files with 201 additions and 218 deletions

View File

@@ -1,6 +1,7 @@
"use strict";
const sql = require('../../services/sql');
const repository = require('../../services/repository');
function getSchema() {
const tableNames = sql.getColumn(`SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%' ORDER BY name`);
@@ -17,7 +18,13 @@ function getSchema() {
}
function execute(req) {
const queries = req.body.query.split("\n---");
const note = repository.getNote(req.params.noteId);
if (!note) {
return [404, `Note ${req.params.noteId} was not found.`];
}
const queries = note.getContent().split("\n---");
try {
const results = [];

View File

@@ -232,7 +232,7 @@ function register(app) {
route(POST, '/api/setup/sync-seed', [auth.checkAppNotInitialized], setupApiRoute.saveSyncSeed, apiResultHandler, false);
apiRoute(GET, '/api/sql/schema', sqlRoute.getSchema);
apiRoute(POST, '/api/sql/execute', sqlRoute.execute);
apiRoute(POST, '/api/sql/execute/:noteId', sqlRoute.execute);
route(POST, '/api/database/anonymize', [auth.checkApiAuthOrElectron, csrfMiddleware], databaseRoute.anonymize, apiResultHandler, false);
// backup requires execution outside of transaction