New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

sql-query

Package Overview
Dependencies
Maintainers
1
Versions
49
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sql-query - npm Package Compare versions

Comparing version 0.1.12 to 0.1.13

4

lib/Dialects/mysql.js

@@ -28,7 +28,7 @@ var util = require("util");

if (Array.isArray(val)) {
return arrayToList(val, timeZone || "Z");
return arrayToList(val, timeZone || "local");
}
if (util.isDate(val)) {
val = dateToString(val, timeZone || "Z");
val = dateToString(val, timeZone || "local");
} else {

@@ -35,0 +35,0 @@ switch (typeof val) {

@@ -5,3 +5,3 @@ var Set = require("./Set");

function InsertQuery(Dialect) {
function InsertQuery(Dialect, opts) {
var sql = {};

@@ -27,3 +27,3 @@

cols.push(Dialect.escapeId(k));
vals.push(Dialect.escapeVal(sql.set[k]));
vals.push(Dialect.escapeVal(sql.set[k], opts.timezone));
}

@@ -30,0 +30,0 @@ query.push("(" + cols.join(", ") + ")");

@@ -30,12 +30,12 @@ var SelectQuery = require("./Select").SelectQuery;

select: function () {
return new SelectQuery(Dialect);
return new SelectQuery(Dialect, opts);
},
insert: function () {
return new InsertQuery(Dialect);
return new InsertQuery(Dialect, opts);
},
update: function () {
return new UpdateQuery(Dialect);
return new UpdateQuery(Dialect, opts);
},
remove: function () {
return new RemoveQuery(Dialect);
return new RemoveQuery(Dialect, opts);
}

@@ -42,0 +42,0 @@ };

@@ -5,3 +5,3 @@ var Where = require("./Where");

function RemoveQuery(Dialect) {
function RemoveQuery(Dialect, opts) {
var sql = {

@@ -32,3 +32,3 @@ where : [],

query = query.concat(Where.build(Dialect, sql.where));
query = query.concat(Where.build(Dialect, sql.where, opts));

@@ -35,0 +35,0 @@ // order

@@ -13,3 +13,3 @@ var Where = require("./Where");

function SelectQuery(Dialect) {
function SelectQuery(Dialect, opts) {
var sql = {

@@ -257,3 +257,3 @@ from : [],

case "text":
return Dialect.escapeVal(el.data);
return Dialect.escapeVal(el.data, opts.timezone);
default:

@@ -342,3 +342,3 @@ return el;

query = query.concat(Where.build(Dialect, sql.where));
query = query.concat(Where.build(Dialect, sql.where, opts));

@@ -345,0 +345,0 @@ if (sql.group_by !== null) {

@@ -1,2 +0,4 @@

exports.build = function (Dialect, set) {
exports.build = function (Dialect, set, opts) {
opts = opts || {};
if (!set || set.length === 0) {

@@ -12,3 +14,3 @@ return [];

" = " +
Dialect.escapeVal(set[k])
Dialect.escapeVal(set[k], opts.timezone)
);

@@ -15,0 +17,0 @@ }

@@ -6,3 +6,3 @@ var Set = require("./Set");

function UpdateQuery(Dialect) {
function UpdateQuery(Dialect, opts) {
var sql = {

@@ -36,4 +36,4 @@ where : []

query = query.concat(Set.build(Dialect, sql.set));
query = query.concat(Where.build(Dialect, sql.where));
query = query.concat(Set.build(Dialect, sql.set, opts));
query = query.concat(Where.build(Dialect, sql.where, opts));

@@ -40,0 +40,0 @@ return query.join(" ");

var Helpers = require('./Helpers');
exports.build = function (Dialect, where) {
exports.build = function (Dialect, where, opts) {
if (where.length === 0) {

@@ -11,3 +11,3 @@ return [];

for (var i = 0; i < where.length; i++) {
subquery = buildOrGroup(Dialect, where[i]);
subquery = buildOrGroup(Dialect, where[i], opts);

@@ -28,3 +28,5 @@ if (subquery !== false) {

function buildOrGroup(Dialect, where) {
function buildOrGroup(Dialect, where, opts) {
opts = opts || {};
if (where.e) {

@@ -46,3 +48,3 @@ // EXISTS

"WHERE " + wheres.join(" AND ") + " " +
"AND " + buildOrGroup(Dialect, { t: null, w: where.w }) +
"AND " + buildOrGroup(Dialect, { t: null, w: where.w }, opts) +
")"

@@ -70,3 +72,3 @@ ];

for (var j = 0; j < where.w[k].length; j++) {
q = buildOrGroup(Dialect, { t: where.t, w: where.w[k][j] });
q = buildOrGroup(Dialect, { t: where.t, w: where.w[k][j] }, opts);
if (q !== false) {

@@ -91,5 +93,5 @@ subquery.push(q);

" BETWEEN " +
Dialect.escapeVal(where.w[k].from) +
Dialect.escapeVal(where.w[k].from, opts.timezone) +
" AND " +
Dialect.escapeVal(where.w[k].to)
Dialect.escapeVal(where.w[k].to, opts.timezone)
);

@@ -101,5 +103,5 @@ break;

" NOT BETWEEN " +
Dialect.escapeVal(where.w[k].from) +
Dialect.escapeVal(where.w[k].from, opts.timezone) +
" AND " +
Dialect.escapeVal(where.w[k].to)
Dialect.escapeVal(where.w[k].to, opts.timezone)
);

@@ -111,3 +113,3 @@ break;

" LIKE " +
Dialect.escapeVal(where.w[k].expr)
Dialect.escapeVal(where.w[k].expr, opts.timezone)
);

@@ -132,3 +134,3 @@ break;

" " + op + " " +
Dialect.escapeVal(where.w[k].val)
Dialect.escapeVal(where.w[k].val, opts.timezone)
);

@@ -149,3 +151,3 @@ break;

// ?:value
return Dialect.escapeVal(where.w[k].where.escapes.shift());
return Dialect.escapeVal(where.w[k].where.escapes.shift(), opts.timezone);
});

@@ -170,6 +172,6 @@

} else {
query.push(buildComparisonKey(Dialect, where.t, k) + " IN " + Dialect.escapeVal(where.w[k]));
query.push(buildComparisonKey(Dialect, where.t, k) + " IN " + Dialect.escapeVal(where.w[k], opts.timezone));
}
} else {
query.push(buildComparisonKey(Dialect, where.t, k) + " = " + Dialect.escapeVal(where.w[k]));
query.push(buildComparisonKey(Dialect, where.t, k) + " = " + Dialect.escapeVal(where.w[k], opts.timezone));
}

@@ -176,0 +178,0 @@ }

@@ -9,3 +9,3 @@ {

],
"version": "0.1.12",
"version": "0.1.13",
"license": "MIT",

@@ -12,0 +12,0 @@ "repository": {

@@ -69,1 +69,27 @@ var common = require('../common');

);
// Dates and Timezones
var d = new Date(1378322111133);
var tzOffsetMillis = (d.getTimezoneOffset() * 60 * 1000);
assert.equal(
dialect.escapeVal(new Date(d.getTime() + tzOffsetMillis)),
"'2013-09-04 19:15:11'"
);
assert.equal(
dialect.escapeVal(new Date(d.getTime()), 'Z'),
"'2013-09-04 19:15:11'"
);
assert.equal(
dialect.escapeVal(new Date(d.getTime()), '-0000'),
"'2013-09-04 19:15:11'"
);
assert.equal(
dialect.escapeVal(new Date(d.getTime()), '-0400'),
"'2013-09-04 15:15:11'"
);
assert.equal(
dialect.escapeVal(new Date(d.getTime())),
dialect.escapeVal(new Date(d.getTime()), 'local')
);
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc