问题标签 [better-sqlite3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 当现有数据已经存在时,为什么 better-sqlite3 不写入我的数据?
每当我为已经存在的数据设置 sqlite 数据时,它都不会设置它。因此,如果用户 '9' 不存在,它将毫无问题地在 sqlite 表中创建行。如果数据确实存在,它什么也不做。
例如试图写给用户'9'
前
结束结果(尝试运行时):
控制台中没有显示错误。以下是按顺序运行的重要文件的片段
index.js(用于创建客户端和调用另一个文件。)
sqlitecreator.js(这个文件基本上创建了一些与这个问题无关的其他 sqlite 文件,并创建一个带有命令名称的客户端集合及其各自的目录供另一个文件读取,并创建用于冷却的文件)
message.js(当客户端收到消息事件时触发,从上面的集合中获取目录,还从 Command.js(类文件)调用函数)
command.js(这个文件使用了 set/getCooldown 函数,这也是一个类文件)
在 message.js 文件中,我 console.log() 我得到的冷却时间,它总是返回相同的值。
npm - npm 重建,电子重建不使用特殊参数
我有一个电子/反应应用程序正在运行。所以在我安装完所有的包之后我必须执行electron-rebuild
所以没有版本问题。
preinstall
我在脚本中安装了一个包:npm install better-sqlite3 --build-from-source --sqlite3=my sqlite amalgamation folder
现在的问题是,electron-rebuild/npm rebuild
我的自定义合并只安装了 better-sqlite3 而不是 better-sqlite3。
这使我无法使用它,因为我需要自定义版本的 sqlite。
有谁知道如何解决这个问题,如何让 electron-rebuild/npm rebuild 安装带有额外参数的包?
discord.js - 如何在 Discord.js 中创建货币和库存系统
所以过去几天我一直在尝试为我的 Discord 机器人制作货币系统和库存系统。但是,我似乎根本无法取得任何进展。我试过使用 sequelize 和 better-sqlite3 (这是我目前正在使用的),但都没有成功。
上面的代码导致这个错误:
我对这样的东西没有太多的了解,因为可供我参考的材料太少了。
node.js - 节点错误,针对不同 Node.js 版本编译的模块,但我安装的版本符合要求
收到一条错误消息,指出我尝试加载的模块是使用 NODE_MODULE_VERSION 83 编译的,而不是它需要的 N_M_V 72,但我安装了 72 个(请参阅图片以获取错误的全文)。
我知道该机器人可以正常工作,因为在我决定转向 vps/vultr 之前,我在 Heroku 上托管它一周都没有问题。将我的所有文件传输到远程服务器,安装 npm 和 node 以及我的依赖项所需的所有各种模块。我强制安装了代码开发使用的 node/npm 版本,然后安装了模块。我已经尝试重建并完全卸载 node/npm 和模块,但仍然收到此错误。我无法复制错误代码,我不想打错字,但它在这里,抱歉
sql - 使用日期为 2019-04-01 的时间函数使用 sqlite3 将时间增加 2 小时
我正在尝试在 sqlite3 中编写 sql,但不知何故它没有传递结果。我试过这个:
或者
或者
任何建议将不胜感激。
typeorm - 我如何将 TypeORM 与 better-sqlite3 一起使用
如何将 TypeORM 与 Better-sqlite3 一起使用?
在官方文档上,有一个部分形式better-sqlite3。
我已经安装了typeorm@latest
,typeorm@next
但是还没有更好的 sqlite3 的选项。
如果我尝试强制初始化它,我收到以下错误
MissingDriverError:错误的驱动程序:给出了“better-sqlite3”。支持的驱动程序有:“cordova”、“expo”、“mariadb”、“mongodb”、“mssql”、“mysql”、“oracle”、“postgres”、“sqlite”、“sqljs”、“react-native”、 “极光数据 api”、“极光数据 api-pg”。
javascript - 当我看到该列存在时,SQLite 错误“没有这样的列”
这里的背景故事是我正在开发一个 Discord 机器人。要求的功能之一是让它高球侮辱。我认为让用户能够通过 SQLite 3 数据库(特别是 Better-sqlite3)添加侮辱会很有趣,并且在这样做时,我还想跟踪每次侮辱的最近使用情况(这是为了将来在“insultinfo”类型命令中使用)。我添加了一个名为“lastUsed”的 DATETIME 列。添加新的侮辱时,我的insultadd 命令能够写入此列。问题是当我调用侮辱命令时,它应该说侮辱,然后用当前日期更新 lastUsed 字段。粘贴下面的代码。
问题是我收到一个错误,上面写着“SQLiteError:没有这样的列:”然后它打印日期值,即使我正在尝试更新 lastUsed 列并且我不知道如何解决这个问题。问题必须在 db.prepare 语句中,我只是没有看到我需要做些什么来解决它。
sqlite - Discord.js 使用 better-sqlite3 向 XP 系统添加排名功能
我目前正在尝试将排名功能添加到我已经存在的 xp 系统中。我可以从数据库中返回一个列表,在XP中的顺序没有问题,问题是映射和索引。我知道这应该很简单,但我很挣扎。任何帮助将不胜感激
sqlite - 有没有办法获得超过 1 个值?
我有一个better-sqlite3
对我的数据库进行排序和排名的语句,我有一个IN
语句,所以我可以选择多于 1 行。这就是我遇到问题的地方,我需要根据动态 ID 数组获取多行。
我的 SQLITE 语句如下所示:
我试图从这个陈述中得到这样的东西:
我收到一个错误:
在不知道数组长度的情况下如何准确地选择多个值(所以?,?
不会削减它),并允许尽可能多的值?我用过?*
,我得到一个语法错误。
我正在better-sqlite3
使用Node.JS
sql - 如何为 SQLite 范围内的每个整数创建列?
这是我表中的一些示例数据:
我需要从 1 到 max(day_number) 的所有 day_number 值,如果此表中未提及,我希望 daily_users_count 为零。
它应该看起来像这样:
我认为,如果我将 daily_users_count 的默认值设置为 0,则左连接与表的数字列具有从 1 到 max(day_number) 的所有整数。
我没有得到的是如何创建这样一个表,其中存在一定范围内的所有整数。任何替代解决方案或任何方法将不胜感激。