Tag: sqlite

Node.js sqlite导出数据库

我有一个node.js和node sqlite npm包的问题。 我正在做一个服务器端客户端应用程序,我需要询问一个SQLite数据库很多,我观察当我做了超过4个查询请求时,它正开始阻止从文件读取事件循环 。 var data_db = new sqlite3.Database('data.db'); 有时我甚至会得到一个18秒的事件块。 发生这种情况时,我在服务器上做很多请求,否则我得到40毫秒50ms事件块,这是不好的。 我观察到,如果在记忆中这样做,一切都会闪电般快速。 var data_db = new sqlite3.Database(':memory:'); 所以我的想法是把所有的东西都放在内存中,并在开始时从data.db导入,然后每60秒将其导出到data.db 问题是我不知道如何从node.js中导出,我该怎么做? 想法?

格式化date时间对象作为SQL的string

我试图unit testing一个新的api端点,我已经build立了查询一个SQLite实例,并返回结果。 我从JSON播种SQLite实例,这是我试图拿起的logging: { "model": "JobResponse", "data": { "id": 4, "JobId": "1", "createdAt": "2017-08-13 00:01" } }, 我通常使用sequelize,并将使用timejs对象作为timeparam,但我需要的查询是不可能在sequelize,所以我使用原始查询。 我的JS正在生成以下查询: SELECT JobId, WHERE JobId = 2 AND createdAt > 2017-08-13 AND createdAt < 2017-08-14; 我确信这是datetime元素格式化的问题,但JSON种子和SQL查询都必须是stringforms,我已经尝试了moment().format() ,但后来我得到错误,例如: SQLITE_ERROR:接近“00” 这大概是因为时刻格式里面有空格。 我应该如何格式化这些date时间参数作为string? 更新 根据评论中的讨论,我现在已经midify我的查询包含引号,例如SELECT JobId, FROM JobResponses WHERE createdAt > '2017-08-10 00:00:01' AND createdAt < '2017-08-10 23:59:00' GROUP BY […]

sqlite.get()导致TypeError:无法读取属性'get'null

当试图执行一个sql.get()调用它在一些地方工作,但在其他地方,我似乎无法弄清楚有什么区别。 数据库成功打开或至less我从来没有得到一个错误,它永远不会被closures。 我也在第二个(工作示例)中使用Discord.js,不知道是否相关。 在这个例子中,它不起作用。 test.js: const sql = require("sqlite"); sql.open("./data.sqlite"); exports.getItemID = function(item) { return new Promise(function (fulfill, reject){ sql.get(`SELECT * FROM items WHERE name="${item}"`).then(row => { console.log(`do stuff`); }).catch((e) => { console.error; reject(e); }) }); } exports.getItemID("Coins").then(itemID => { console.log(itemID); }).catch((e) => { console.log(e); }); 堆栈跟踪: $ node test.js TypeError: Cannot read property 'get' […]

在数据库中获取基于id的快速js url路由

我有包含articleID和articleDescription的文章表的sqlite数据库。 我正在使用expressjs作为服务器: app.get('/articleDetail/:id',function(req,res){ res.sendFile(path.join(__dirname+'/articleDetail.html')); var id = req.params.id; var query = "select * from article where articleID = " + id; }); 我想在数据库中显示基于其id的文章内容。 例如:当您在主页上select第5条时,会将您带到url…. / articleDetail / 5,并向用户显示内容。 我有两个问题的总结:我如何连接和我的数据库中的ID到url/路线的ID? 我如何使用express来显示正确的文章内容? 谢谢你的帮助。

用SQLite3进行unit testing

我正在编写unit testing,并用他的inmemory模式使用SQLite3。 我这样做,因为我需要是每个testing新的数据库,所以我可以并行运行testing,而不会相互影响。 但是,这越来越慢,更多的testing,我有。 是否有任何优化,我可以用sqlite3,另一个更好的工作stream程(如一个好的嘲笑库)或另一个解决scheme做这个问题? 我需要运行原始查询。 目前我使用knexjs,但是这与所有的数据访问库有关。

SQLITE 3安装错误

我总是尝试通过命令行安装东西。 我最近安装了Node(最新版本,版本号为9.20)。 我正在尝试安装/设置GECKO进行汽车交易。 而且它需要安装SQLite3。 我正在按照以下链接设置壁虎: 我正在从命令行键入的步骤:npm = install 然而,在开始下载一些文件后,它会出现几个“ERR!” 声明和切断。 这是输出: (PS我曾尝试使用只是“npm安装”,我已经尝试使用“npm安装sqlite3”,两者都给最后相同的错误。 C:\ Users \ fable187 \ Downloads \ gekko-stable \ gekko-stable> npm install sqlite3 sqlite3@3.1.13安装C:\ Users \ fable187 \ Downloads \ gekko-stable \ gekko-stable \ node_modules \ sqlite3 node-pre-gyp install – 回落到构build node-pre-gyp ERR! 试图下载(403): https : //mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.13/node-v59-win32-x64.tar.gz node-pre-gyp ERR! 找不到sqlite3@3.1.13和node@9.2.0(node-v59 ABI)的预构build二进制文件(使用node-gyp回退到源代码编译) C:\ Users […]

节点JS – 不一致js – 使用winston与quick-db聊天logging

所以,我想添加一个聊天logging系统与SQL与快速分贝,目前我有这个作为一个临时的修复,但它仅仅是丑陋的日志。 yumi.on('ready', () => { winston.add(winston.transports.File, { filename: 'yumi.log', level: 'info' }); }); yumi.on('message', msg => { winston.log('info', msg.guild + ' – ' + msg.channel.name + ' – ' + "@ " + msg.author.username + '#' + msg.author.disscriminator + msg.author + ' | ' + msg.content) }); 我将如何去存储用户名与客户端ID到sqlite或通过使用这个奇特的工具称为quick.db 任何想法或如何开始这样做?

电子knex的sqlite处理

我有一些电子应用程序的问题,用knexjs和sqlite响应。 我在节点脚本上使用knex和sqlite数据库文件,这也负责电子引导。 当我从“电子”命令运行应用程序,从控制台一切正常,应用程序工作和数据库是好的。 但是,当我打包电子包装应用程序崩溃的应用程序开始(没有任何错误)。 当我删除部分knex处理负责与sqlite文件应用程序连接工作… knex bootstraping看起来像这样: let knex = require("knex")({ client: "sqlite3", connection: { //when i comment this line app does not crash filename: path.join(app.getPath('userData'), 'database.sqlite') } }); 你有什么想法可能是错的?

nodejs与SQLite故障切换的MySQL连接

我正在寻找一个简单的例子(因为我是新来的节点)如何连接到MySQL做node.js写入(INSERT),如果连接到数据库是不成功的我想写INSERT到这两个文件,以便稍后重播或本地SQLite数据库文件。 愿意就是否有更好的方法来提供build议。 任何帮助不胜感激。 问候Ric

CoffeeScript,寻找类似于SQL的模块

我试图让CoffeeScript允许SQL语句以及它的正常语法。 这需要一个体面的SQLite / MySQL / SimilarDB模块添加到CoffeeScript,以允许我对语法做出的改变。 任何人都知道任何我需要的模块吗? 我已经把这个鬼混了,发现了以下(破碎的)解决scheme: https://github.com/orlandov/node-sqlite https://github.com/grumdrig/node-sqlite http://coffeescriptcookbook.com/chapters/databases/sqlite 如果您发表评论,请确定您所指的WORKS模块。 有很多旧的模块不再适用于最新的NodeJS版本。 以下github项目是我从中分离出来的项目,正在尝试修改。 https://github.com/jashkenas/coffee-script 谢谢!