feat: query to fetch unique columns
Signed-off-by: Muhammad Aaqil <aaqilcs102@gmail.com>
This commit is contained in:
parent
012c2def3a
commit
514630bdcd
29
lib/sql.js
29
lib/sql.js
|
@ -2105,3 +2105,32 @@ SQLConnector.prototype.setNullableProperty = function(property) {
|
||||||
throw new Error(g.f('{{setNullableProperty}} must be implemented by' +
|
throw new Error(g.f('{{setNullableProperty}} must be implemented by' +
|
||||||
'the connector'));
|
'the connector'));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Build sql to discover properties with unique index
|
||||||
|
*/
|
||||||
|
SQLConnector.prototype.buildQueryUniqueKeys = function(schema, table) {
|
||||||
|
throw new Error(g.f('{{buildQueryUniqueKeys}} must be implemented by the connector'));
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Discover properties with unique index
|
||||||
|
* @param {String} table The table name
|
||||||
|
* @param {Object} options The options for discovery
|
||||||
|
* @param {Function} [cb] The callback function
|
||||||
|
*/
|
||||||
|
SQLConnector.prototype.discoverUniqueKeys = function(table, options, cb) {
|
||||||
|
const self = this;
|
||||||
|
const args = self.getArgs(table, options, cb);
|
||||||
|
let schema = args.schema || args.owner;
|
||||||
|
|
||||||
|
if (typeof (self.getDefaultSchema) === 'function' && !schema) {
|
||||||
|
schema = self.getDefaultSchema();
|
||||||
|
}
|
||||||
|
table = args.table;
|
||||||
|
options = args.options;
|
||||||
|
cb = args.cb;
|
||||||
|
|
||||||
|
const sql = self.buildQueryUniqueKeys(schema, table);
|
||||||
|
this.execute(sql, cb);
|
||||||
|
};
|
||||||
|
|
Loading…
Reference in New Issue