V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
microchang
V2EX  ›  Node.js

node 有没有包装了 mysql 和 mssql 等常见数据库操作的统一的三方库?

  •  
  •   microchang · 2016-03-01 17:43:26 +08:00 · 3278 次点击
    这是一个创建于 3191 天前的主题,其中的信息可能已经有所发展或是发生改变。

    RT 。

    1. 起码包括了 mysql 和 mssql 这两种数据库的 curd ,针对表和库的操作,视图,存储过程;
    2. 包装过后,无论哪个数据库,通过这个三方库的 API 来操作的时候,我是感受不到数据库差异带来的不同的。换言之,一个 API ,除了 dbType 参数可能不同,其他都一样;
    3. 因为数据来源不确定,所以不需要 orm ,如sequelize,只需要可以执行 sql 语句并返回结果即可。

    反复查找思考了一天,虽然有squel这种感觉能抹掉查询语句差异的三方库,然而它提供的操作手段还是太少。

    目前的想法是大部分的 curd 语句应该是相同的,少部分的语句可能会有语法或者结果上的差异。这部分手动处理,其他则手动包装一下。

    伟大的 V 友们,你们有什么推荐或者好的想法没?求教之~

    11 条回复    2016-03-03 09:27:55 +08:00
    yimity
        1
    yimity  
       2016-03-01 18:15:58 +08:00
    你要的是不是这个? sequelizejs
    fo2w
        2
    fo2w  
       2016-03-01 18:51:56 +08:00
    @yimity 我还是建议回答前阅读完原文
    microchang
        3
    microchang  
    OP
       2016-03-01 18:52:03 +08:00
    @yimity 数据结构和来源不固定, orm 无力。。。
    janxin
        4
    janxin  
       2016-03-01 19:48:44 +08:00
    没明白, sequelize.query 这种 raw query 也不行吗?需求到底是啥样子的?
    jerray
        5
    jerray  
       2016-03-01 19:52:38 +08:00
    https://github.com/tgriesser/knex 支持好几个数据库,但好像并没有 mssql 。
    loading
        6
    loading  
       2016-03-01 20:52:10 +08:00 via Android
    这不就是相当于内部的 restful api …
    stackboom
        7
    stackboom  
       2016-03-01 20:54:07 +08:00
    自己写咯~ 根据 dbType 判断呗。
    microchang
        8
    microchang  
    OP
       2016-03-01 21:01:04 +08:00
    @janxin 之前看文档看漏了……只看了一个 guide ……我仔细看看!
    microchang
        9
    microchang  
    OP
       2016-03-01 21:01:29 +08:00
    @jerray 是的……微软大法好……
    microchang
        10
    microchang  
    OP
       2016-03-01 21:02:02 +08:00
    @loading
    @stackboom

    ` _>` 人生多艰……
    for8ever
        11
    for8ever  
       2016-03-03 09:27:55 +08:00
    对于关系型数据库,用 Sequelize ,嗯 (⊙v⊙)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1027 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 21:02 · PVG 05:02 · LAX 13:02 · JFK 16:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.