美文网首页
mysql、co-msql

mysql、co-msql

作者: squidbrother | 来源:发表于2019-09-29 10:58 被阅读0次
数据库分类

文件型:简单 - access、sqlite
关系型:Mysql、Oracle
分布式:MongoDB
NoSQL : memcache、redis、MongoDB

数据库管理工具
mysql 管理工具: navicat、phpmyadmin

同一个项目,很有可能要借助多种数据库,来完成任务

mysql数据库基础设置
  • 库格式(编码)设置 :
utf8_general_ci   //一般使用
big5_chinese_ci  //国内,偏旁部首排序
  • 表 设置
表名称,列数
  • 字段设置
    A_I (auto_increment) 勾选,针对某一个字段,自动增加

索引设置:
PRIMARY (主键:不重复,性能高)
UNIQUE (不重复)

常用类型设置:
1.整型
2.文本类型
VARCHAR 32 位 (VARCHAR 区域别 CHAR 是在范围内可变长度)
text 2GB
3.数字类型: INT

mysql、co-mysql

co-mysql 作用,将mysql中异步回调形式,令其可以使用async await形式

安装:
npm install mysql co-mysql -D

使用:

const http = require('http');
const mysql = require('mysql');
const co = require('co-mysql');
const Koa = require('koa');

let conn = mysql.createPool({
    connectionLimit:10, //连接数,默认10个
    host:'localhost',
    user:'root',
    password:'',
    database:'数据 库名'
    port:3306   //默认服务器端口
});
let db = co(conn); //异步连接
let App = new Koa();
App.listen(8080);

App.context.db = db; //可以在任意模块中使用 ctx.db操作数据库

App.use(async (ctx,next)=>{
  try{
    //依靠co-mysql可以使用async await的书写形式
    let data = await ctx.db.query('SELECT * FROM 表名');
    next();
  }catch(e){
    console.log('error',e);
  }
});

App.use(async (ctx,next)=>{
  //传统回调书写的形式
  db.query('SELECT * FROM 表名',(err,data)=>{
    if(err){
        console.log(err);
    }else{
        console.log(data);
    }   
  });
});

相关文章

网友评论

      本文标题:mysql、co-msql

      本文链接:https://www.haomeiwen.com/subject/azxiyctx.html