You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
"use strict"; |
|
const _ = require("lodash"); |
|
const AbstractDialect = require("../abstract"); |
|
const ConnectionManager = require("./connection-manager"); |
|
const Query = require("./query"); |
|
const QueryGenerator = require("./query-generator"); |
|
const DataTypes = require("../../data-types").mysql; |
|
const { MySQLQueryInterface } = require("./query-interface"); |
|
class MysqlDialect extends AbstractDialect { |
|
constructor(sequelize) { |
|
super(); |
|
this.sequelize = sequelize; |
|
this.connectionManager = new ConnectionManager(this, sequelize); |
|
this.queryGenerator = new QueryGenerator({ |
|
_dialect: this, |
|
sequelize |
|
}); |
|
this.queryInterface = new MySQLQueryInterface(sequelize, this.queryGenerator); |
|
} |
|
canBackslashEscape() { |
|
return true; |
|
} |
|
} |
|
MysqlDialect.prototype.supports = _.merge(_.cloneDeep(AbstractDialect.prototype.supports), { |
|
"VALUES ()": true, |
|
"LIMIT ON UPDATE": true, |
|
lock: true, |
|
forShare: "LOCK IN SHARE MODE", |
|
settingIsolationLevelDuringTransaction: false, |
|
inserts: { |
|
ignoreDuplicates: " IGNORE", |
|
updateOnDuplicate: " ON DUPLICATE KEY UPDATE" |
|
}, |
|
index: { |
|
collate: false, |
|
length: true, |
|
parser: true, |
|
type: true, |
|
using: 1 |
|
}, |
|
constraints: { |
|
dropConstraint: false, |
|
check: false |
|
}, |
|
indexViaAlter: true, |
|
indexHints: true, |
|
NUMERIC: true, |
|
GEOMETRY: true, |
|
JSON: true, |
|
REGEXP: true |
|
}); |
|
MysqlDialect.prototype.defaultVersion = "5.7.0"; |
|
MysqlDialect.prototype.Query = Query; |
|
MysqlDialect.prototype.QueryGenerator = QueryGenerator; |
|
MysqlDialect.prototype.DataTypes = DataTypes; |
|
MysqlDialect.prototype.name = "mysql"; |
|
MysqlDialect.prototype.TICK_CHAR = "`"; |
|
MysqlDialect.prototype.TICK_CHAR_LEFT = MysqlDialect.prototype.TICK_CHAR; |
|
MysqlDialect.prototype.TICK_CHAR_RIGHT = MysqlDialect.prototype.TICK_CHAR; |
|
module.exports = MysqlDialect; |
|
//# sourceMappingURL=index.js.map
|
|
|