deno连接mysql数据库

准备工作

  1. deno环境
  2. denoDB(专门用于连接多种数据库的一个deno第三方拓展库)

前言

关于deno的第三方拓展包可以在deno的官网里面找到在这里插入图片描述
然后直接搜你想要的关键词,如果找得到你想要的第三方依赖包,就直接拿下来就好了。
比如我们今天是主角是denoDB
在这里插入图片描述
点进去就能看开发文档啥的了。方便点我就直接写成例子出来供大家参考学习了。希望能为deno的生态奉献自己一点微薄的力量。

开始

既然我们要连接数据库进行操作,那我们就现在本地随便建一张测试表吧。
如果你们懒得自己建表测试就用这个吧

CREATE TABLE `deno_study`.`stu_user`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NULL,
  PRIMARY KEY (`id`)
);

insert into stu_user(name) values ('小蓝'),('小黑'),('小红');

然后我们的目标就是查出这(‘小蓝’),(‘小黑’),(‘小红’)这三个名字。
在这里插入图片描述
然后我们的代码会使用typescript进行编写
我将会把功能给一块一块的分开编写,便于代码阅读

编写代码连接数据库

sqlConnect.ts

// 这是deno导入第三方依赖的其中一种方式
import { MySQLConnector, Database } from 'https://deno.land/x/denodb/mod.ts'

// 这个Database类里面封装了许多操作数据库的方法
export default new Database(new MySQLConnector({
  // 数据库地址
  host: 'localhost',
  // 数据库端口
  port: 3306,
  // 数据库账号
  username: 'root',
  // 数据库密码
  password: 'root',
  // 要连接的数据库名称,我本地这边建的这个数据库的名称为deno_study
  database: 'deno_study'
}))

编写好数据库连接代码后暴露出去等待使用

编写数据库模型

说到数据库表模型,我想各位应该都知道是什么东西。
我自己对数据库表模型的概念就是把一个数据库的某张表给造成一个实体类。
userModel.ts

// 还是同样的导入方式
import { Model, DataTypes } from 'https://deno.land/x/denodb/mod.ts'

// 编写数据库用户表的模型
class UserModel extends Model{
  // 对应的表
  static table = 'stu_user'
  // 对应的数据库的字段
  static fields = {
    // 这是stu_user表的主键,也是第一列
    id: {
      // 是否为主键
      primaryKey: true,
      // 是否会自动递增序号
      autoIncrement: true
    },
    // 这是第二列,后面对应的是数据类型, 我在表里面是varchar, 所以我使用了string类型
    name: DataTypes.STRING
  }
}

export default UserModel

编写代码查询数据

index.ts

// 连接数据库的那个模块
import sql from './src/config/sqlConnect.ts'

// 用户模型的模块
import UserModel from './src/model/userModel.ts'

// 使用link函数连接用户模型
sql.link([UserModel])

// 读数据库内容
console.log(await UserModel.select().all())

sql.close()

当我们写完代码之后
直接在控制台输入
deno run index.ts
在这里插入图片描述

我们就完成啦。
还有就是,这个denoDB的数据库操作方法是链式操作的,写起来好像php的laravel框架的数据库操作方式,所以写起来会很爽的,各位抓紧取体验一下吧。
这篇博客的内容就到这里啦。谢谢各位观看啦。路过的可以点个小赞吗。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小蓝阿姨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值