javascript - 如何将 id IS NOT NULL 与转义变量 ??/?

标签 javascript mysql node.js

我尝试添加 3 个变体:

  1. 版本不为空并且
  2. 版本 = ' + criteria.version + ' AND

我需要使用转义 请帮忙

这段代码是错误的,但为了理解我需要这样:

function getCriteria(criteria){
  var ver = '';

  if(criteria.version == null){
    ver = 'version IS NOT NULL AND';
  }
  else if(criteria.version > 0)
  {
    ver = 'version = ' + criteria.version + ' AND';
  }
  
  return mysql.getConnection((conn) => {
    return conn.queryAsync('SELECT * FROM hlrlookup.hlrlookup ' +
                           'WHERE ? create_timestamp < "2017-02-16 13:34:40"', [ver]).then............

最佳答案

您可以使用常规字符串处理构建查询文本,但在需要时仍使用参数化;

function getCriteria(criteria) {
  var ver = '';
  var parms = []

  if(criteria.version == null){
    ver = 'version IS NOT NULL AND';
  }
  else if(criteria.version > 0)
  {
    ver = 'version = ? AND';
    parms = [criteria.version]
  }

  return mysql.getConnection((conn) => {
    return conn.queryAsync(
        'SELECT * FROM hlrlookup.hlrlookup ' +
        'WHERE ' + ver + ' create_timestamp < "2017-02-16 13:34:40"', parms)
      .then............

关于javascript - 如何将 id IS NOT NULL 与转义变量 ??/?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35432719/

相关文章:

php - 在 MySQL 中选择部分列标题

node.js - 与nodejs中的child_process共享数据库连接

javascript - 未捕获的 InvalidStateError : Failed to execute 'transaction' on 'IDBDatabase' : A version change transaction is running

javascript - XMLHttpRequest().send(value) 发送空白值

javascript - keydown 在 keyup 之前触发多次

node.js - Nodemon 在 Linux 上安装警告

javascript - express.js 中的 session 未定义错误

javascript - 如何从 cognito 异步函数返回响应并将其显示在页面上?

mysql docker image 支持在启动时创建多个数据库

php - 图表(数组 3 值)