在Node.jsunit testing中重置MySQL自动增量作为拆卸步骤
我目前正在Node.js应用程序中运行DAL上的unit testing。 我希望能够使用虚拟数据库,在整个testing过程中通过非正式的设置/拆卸testing我的CRUD操作。 例如,通过执行插入来进行安装,并通过执行删除来进行拆卸。
我正在testing数据库,而不是模拟/假,因为我宁愿testing复杂的SQL对数据库的半工作副本。
我遇到的问题是在具有AUTO_INCREMENT
-ing的列上,我不能指望在ID上有任何一致性。 通过重新设置AUTO_INCREMENT
我可以避免这一点,但是我会做大量的复制粘贴代码,在我的所有模型中插入一个方法。
有什么办法我可以做一次,忘记它? 还是有一个更好的做法,我完全错过了?
你可以使用MySQL的TRUNCATE TABLE命令,清空一个表并重置AUTO_INCREMENT列。 实际上,它会删除表并重新创build,比删除所有行更快。
- sequelize.js:未处理的拒绝SequelizeForeignKeyConstraintError
- 无法使用NodeJS(ExpressJS)parsingXML以进入MongoDB
- 如何在angular度全堆生成器生成的已authentication端点中运行超类
- Angular.js – redirect不工作
- NodeJS在foreach循环中运行一个promise-mysql查询,每次都等待结果
- 在公共资产目录中包含.html文件?
- 一个node.js高速路由和一个控制器有什么区别?
- 在node.js中使用socket.io共享协作工作的url
- 当在node.js中保存大文档时,MongoDB-mongoose使用高cpu