• js knex基本用法


    Knex.js可以帮助我们更轻松地与数据库进行交互。包括安装、连接、查询和修改数据等方面的内容。

    介绍

    Knex.js是一个基于Node.js的数据库工具库,它支持多种数据库,如MySQL、PostgreSQL、SQLite等。Knex.js具有以下优点:

    1. 易用性强:Knex.js提供了简单易用的API,使得开发者可以更容易地与数据库进行交互。
    2. 灵活性高:Knex.js支持多种数据库,使得开发者可以根据项目需求选择最合适的数据库。
    3. 性能优异:Knex.js在内部实现了许多优化,保证了查询和修改数据的性能。
    4. 事务支持:Knex.js支持事务操作,使得开发者可以更方便地进行数据库操作。

    安装

    使用npm安装Knex.js非常简单,只需在终端中执行以下命令即可:

    npm install knex
    
    • 1

    使用

    在使用Knex.js之前,我们需要先创建数据库连接。以下是一个简单的示例:

    const knex = require('knex')({
      client: 'mysql',
      connection: {
        host: '127.0.0.1',
        user: 'your_database_user',
        password: 'your_database_password',
        database: 'myapp_test'
      }
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    以上代码中,我们使用Knex.js连接到MySQL数据库。接下来,我们可以使用Knex.js进行查询和修改数据等操作。

    查询

    Knex.js提供了多种查询数据的方法。以下是一些常用的查询示例:

    1. 简单查询
    knex('users').select('*').where({ id: 1 });
    
    • 1

    以上代码中,我们查询id为1的用户信息。

    1. 条件查询
    knex('users').select('*').where('age', '>', 18);
    
    • 1

    以上代码中,我们查询年龄大于18岁的用户信息。

    1. 排序查询
    knex('users').select('*').orderBy('age', 'desc');
    
    • 1

    以上代码中,我们按照年龄降序查询用户信息。

    修改

    Knex.js也提供了多种修改数据的方法。以下是一些常用的修改示例:

    1. 更新数据
    knex('users').update({ name: 'new name' }).where({ id: 1 });
    
    • 1

    以上代码中,我们更新id为1的用户的名称为“new name”。

    1. 插入数据
    knex('users').insert({ name: 'John', age: 25 });
    
    • 1

    以上代码中,我们在用户表中插入一条新的用户数据。

    1. 删除数据
    knex('users').delete().where({ id: 1 });
    
    • 1

    以上代码中,我们删除id为1的用户数据。

    高级用法

    Knex.js还提供了一些高级用法,如事务、并发控制和数据类型支持等。以下是一些常用的高级用法示例:

    1. 事务

    事务可以保证多个数据库操作要么全部成功,要么全部失败。Knex.js支持使用事务来执行多个数据库操作。以下是一个事务的示例:

     knex.transaction(function (t) {
      t.batch([update queries...]); // 一组更新操作
      t.batch([insert queries...]); // 一组插入操作
      t.batch([delete queries...]); // 一组删除操作
      return Promise.all(batchPromises); // Promise数组,用于等待所有查询完成
    })).then(function () { // 所有查询成功完成时触发的回调函数
      console.log('事务成功完成');
    }).catch(function (error) { // 出现错误时触发的回调函数
      console.log('事务失败:', error);
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    K8S面试总结
    java中@Repository注解的作用?
    CTFshow 信息收集 web12 13 14 15
    python 虚拟环境搭建
    测试除了点点点,还有哪些内容呢?
    JavaEE 进阶:Spring 的创建和使用
    Linux下延时一定时间,又不挂起程序。
    uniapp编译微信小程序富文本rich-text的图片样式不生效原因
    08 SQL进阶 -- 集合运算 -- 表的连结(JOIN)
    CSDN Meetup 回顾 丨从数据湖到指标中台,提升数据分析 ROI
  • 原文地址:https://blog.csdn.net/qq_45471661/article/details/133673251