# mysqinfo

> 更加便捷的通过node使用mysql数据库,包含后端的基本操作函数

Latest version **1.2.8** (published 2024-04-03) · MIT license · 0 weekly downloads

## Install

```sh
npm install mysqinfo
pnpm add mysqinfo
yarn add mysqinfo
bun add mysqinfo
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.2.8 |
| Published | 2024-04-03 |
| First published | 2024-04-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 18.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | BAIHAOWEN |
| Maintainers | baihaowen |
| Keywords | mysql, mysqlinfo, Convenient operation database, Back-end basic operation |

## Links

- npm: https://www.npmjs.com/package/mysqinfo
- npm.io page: https://npm.io/package/mysqinfo

## Dependencies (1)

- [mysql](https://npm.io/package/mysql.md) ^2.18.1

## Alternatives

- [@libsql/sqlite3](https://npm.io/package/@libsql/sqlite3.md) — 39.8K weekly downloads
- [@fortemi/core](https://npm.io/package/@fortemi/core.md) — 461 weekly downloads
- [cdb-converter](https://npm.io/package/cdb-converter.md) — 341 weekly downloads
- [@uplo/adapter-prisma](https://npm.io/package/@uplo/adapter-prisma.md) — 75 weekly downloads
- [typeorm-aios](https://npm.io/package/typeorm-aios.md) — 30 weekly downloads

## Recent versions

- 1.2.8 (latest) — 2024-04-03
- 1.2.7 — 2024-04-03
- 1.1.7 — 2024-04-02
- 1.1.6 — 2024-04-02
- 1.1.5 — 2024-04-02
- 1.1.4 — 2024-04-01
- 1.0.4 — 2024-04-01
- 1.0.3 — 2024-04-01
- 1.0.2 — 2024-04-01
- 1.0.1 — 2024-04-01
- 1.0.0 — 2024-04-01

## README

## 安装

```
npm install mysqinfo
```

> 已经引入mysql工具包,无需在项目中再次引入mysql工具包



## 导入

```js
const db = require('mysqinfo')
```



## 获取数据库对象

```js
// db.dbconnect('mysql地址','mysql账号','mysql密码','数据库名字')
const mdb = db.dbconnect('127.0.0.1','root','123456','nodetest')

const sql = 'select 1'
mdb.query(sql,(err,res) => {
    if(err) return console.log(err.message);

    console.log(res);//[ RowDataPacket { '1': 1 } ]
})
```



## 查询数据

### 查询表中所有数据

```js
//db.datafind(数据库对象,表名)
db.datafind(mdb, "users")
    .then((res) => {
        console.log(res);//查询结果
    })
    .catch((err) => {
        console.error(err);
    });
```

### 带过滤条件的查询

```js
//db.datafindfilter(数据库对象,表名，查询条件)
db.datafindfilter(mdb,"users","id = 3")
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```



## 删除数据

```js
//db.datadeletefilter(数据库对象,表名，删除条件)
db.datadeletefilter(mdb,"users","id = 7")
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```



## 添加数据

```js
// db.dataadd(数据库对象,表名，添加数据对象)
db.dataadd(mdb,"users",{username:'test',password:'123456'})
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```



## 修改数据

```js
// db.dataupdate(数据库对象,表名,修改数据对象,过滤条件)
db.dataupdate(mdb,"users",{username:'updatesucess',password:'1111'},'id = 10')
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```



## 模糊查询

### 查询包含此字段的所有数据

```js
// db.datalikeinclude(数据库对象,数据表,模糊匹配对应字段名字,模糊查询匹配值)
db.datalikeinclude(mdb, "users","username","白")
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```

### 查询包含此字段开头的所有数据

```js
// db.datalikebegin(数据库对象,数据表,模糊匹配对应字段名字,模糊查询匹配值)
db.datalikebegin(mdb, "users","username","白")
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```



## 连表查询

### 双表连接

```js
// db.datadoubletablequery(数据库对象,表1,表2,表1连接字段,表2连接字段)
db.datadoubletablequery(mdb,"users","userscon1","id","userid")
    .then((res) => {
        console.log(res);
    })
    .catch((err) => {
        console.error(err);
    });
```



## 中间件

### 响应处理中间件

定义

```js
//在所有路由之前使用
app.use(db.Responsemiddleware)
```

使用

```js
//使用方法eg:
// 以查询所有数据为例子为例子
/*查询*/
db.datafind(mdb, "users")
    .then((res) => {
        console.log(res);
        /*可以调用res.cc来提示错误或者成功信息*/
        /**
         * res.cc(错误信息 错误对象or字符串,状态[默认为1代表错误,0代表成功])
         */
        res.cc("查询成功!",0)
    })
    .catch((err) => {
        console.error(err);
        /*可以调用res.cc来提示错误或者成功信息*/
        res.cc(err)
    });
```



### 错误中间件

```js
//在所有路由之后使用
app.use(db.Responsemiddleware)
/*在请求中自动捕获错误,并且提前中断*/
```



## 开源协议

MIT

---
_Source: https://npm.io/package/mysqinfo · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
