Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在活动mysql查询中调用数据库的名称_Javascript_Mysql - Fatal编程技术网

Javascript 在活动mysql查询中调用数据库的名称

Javascript 在活动mysql查询中调用数据库的名称,javascript,mysql,Javascript,Mysql,这可能是一个基本问题,但我找不到答案 我如何引用在我自己查询中调用的表的名称,而不需要手动定义它 现在我用 const mysqlDB = require(`../../../functions/mysql.js`); sql = "SELECT * FROM test_table ORDER BY id"; mysqlDB.query(sql, function (err, result) { if (err) throw err; m

这可能是一个基本问题,但我找不到答案

我如何引用在我自己查询中调用的表的名称,而不需要手动定义它

现在我用

    const mysqlDB = require(`../../../functions/mysql.js`);
    sql = "SELECT * FROM test_table ORDER BY id";
    mysqlDB.query(sql, function (err, result) {
        if (err) throw err;

        message.reply(`Returning **${result.length}** results from **test_table** table.`);
我知道如何引用被调用的表名的唯一方法是这样定义,如果可能的话,我希望避免这样定义

const mysqlDB = require(`../../../functions/mysql.js`);
sql.table = test_table;
sql = `SELECT * FROM ${sql.table} ORDER BY id`;
mysqlDB.query(sql, function (err, result) {
    if (err) throw err;

message.reply(`Returning **${result.length}** results from **${test_table}** table.`);

我认为,通过一个简单的单表查询和正确的库,您所要求的理论上是可能的。但是使用Node.js MySQL(我猜您正在使用),这似乎是不可能的。结果只是行,仅此而已

此外,一旦您的查询变得更加复杂并包含多个表,就不清楚这将如何工作

所以假设这只适用于单个表查询,为什么不使用变量名呢

如果您确实希望查询结果中包含该表名,请将您的查询设置为

SELECT *, 'test_table' as 'table_name' FROM test_table ORDER BY id
现在,您的表名是响应的一部分