feat: add missing triggers and events factories

This commit is contained in:
Nybkox
2025-01-03 16:26:10 +01:00
parent ceb6a88964
commit 576a4fc2e5
4 changed files with 26 additions and 1 deletions

View File

@@ -166,6 +166,10 @@ const driver = {
label: 'New table valued function',
sql: 'CREATE FUNCTION myfunc (@arg1 INT) RETURNS TABLE \nAS\nRETURN SELECT * FROM table1',
},
{
label: 'New trigger',
sql: 'CREATE TRIGGER trigger_name\nON table_name AFTER INSERT AS\nBEGIN\nSELECT * FROM table_name\nEND',
},
];
},

View File

@@ -192,6 +192,11 @@ const mysqlDriverBase = {
sql: 'DELIMITER //\n\nCREATE PROCEDURE myproc (IN arg1 INT)\nBEGIN\n SELECT * FROM table1;\nEND\n\nDELIMITER ;',
},
{ label: 'New function', sql: 'CREATE FUNCTION myfunc (arg1 INT)\nRETURNS INT DETERMINISTIC\nRETURN 1' },
{ label: 'New trigger', sql: 'CREATE FUNCTION myfunc (arg1 INT)\nRETURNS INT DETERMINISTIC\nRETURN 1' },
{
label: 'New event',
sql: 'CREATE EVENT `event_name`\nON SCHEDULE EVERY 1 HOUR\nDO\nBEGIN\n\nEND',
},
];
},
};

View File

@@ -139,6 +139,15 @@ BEGIN
END
$$ LANGUAGE plpgsql;`,
},
{
label: 'New trigger',
sql: `
CREATE OR REPLACE TRIGGER trigger_name
AFTER INSERT ON "table_name" FOR EACH ROW
BEGIN
END trigger_name;
`,
},
];
},

View File

@@ -2,7 +2,7 @@ const { driverBase } = global.DBGATE_PACKAGES['dbgate-tools'];
const Dumper = require('./Dumper');
const { postgreSplitterOptions } = require('dbgate-query-splitter/lib/options');
const spatialTypes = ['GEOGRAPHY','GEOMETRY'];
const spatialTypes = ['GEOGRAPHY', 'GEOMETRY'];
/** @type {import('dbgate-types').SqlDialect} */
const dialect = {
@@ -203,6 +203,13 @@ BEGIN
END
$$ LANGUAGE plpgsql;`,
},
{
label: 'New trigger',
sql: `CREATE TRIGGER trigger_name
BEFORE INSERT ON table_name
FOR EACH ROW
EXECUTE FUNCTION function_name();`,
},
];
},