db.execsql创建database文件夹失败_node.js 创建数据库

node.js 现在对于前端来说 也算是必不可少的 

node.js 是后端语言 既然是离不开对数据库的操作 

接下来是 十三 带来的是 在node中如何创建数据库 

d9b0e6f75dd18d2206061339c5404530.png

要从node.js应用程序连接到MySQL并创建表,请使用以下步骤:

  1. 连接到MySQL数据库服务器,请参考:http://www.yiibai.com/mysql/nodejs-connect.html

  2. 调用connection对象上的query()方法来执行CREATE TABLE语句。

  3. 关闭数据库连接。

const mysql = require('mysql');const con = mysql.createConnection({host: "localhost", user: "root", password: "root"});con.connect(function(err) {if (err) throw err;console.log("Connected!");con.query("CREATE DATABASE srcmini", function (err, result) {if (err) throw err;console.log("Database created");});});});

query()方法接受SQL语句和回调。回调函数有三个参数:

  • error:如果语句执行期间发生错误,则存储详细错误

  • results:包含查询的结果

  • fields:包含结果字段信息(如果有)

// 在终端中执行文件node testMysql.js

可以看到 我们的数据库已经创建完毕

下面是 创建库 并且创建表

const mysql = require('mysql');// 配置对象let config = {  host: " ",  user: "root",  password: "root",  database: ''}// 避免 this 指向问题  let _this = nullclass mysqlIns {  constructor(config = {}) {    this.info = {      host: config.host || '',      user: config.user || '',      password: config.password || '',      database: config.database || '',    }    _this = this    this.init()  }  // 初始化 mysql 数据池  init () {    this.info.database = '' // 避免不必要的麻烦清空 database    this.con = mysql.createConnection(this.info)    this.con.connect(function (err) {      // 数据连接失败       if (err && err.message) return console.log('数据连接失败', err.message);      _this.ku()    })  }  // 创建数据库  ku () {    // 创建库的SQL语句    const sql = 'CREATE DATABASE srcmini'    _this.con.query(sql, function (err, res) {      // TODO 是否需要return? 无论 err是否有值 都是创建表! 难道会创建失败?       err && err.message ? console.log('数据库存在', err.message) : console.log('数据库创建成功!')      // 说明库以已创建好 连接数据库 进行创建表      _this.info.database = 'srcmini'      _this.con = mysql.createConnection(_this.info)      _this.Table()    })  }  // 创建数据表  Table () {    // 执行创建数据表的 SQL 语句    let createTodos = `create table if not exists todos(      id int primary key auto_increment,      title varchar(255)not null,      completed tinyint(1) not null default 0  )`;    this.con.query(createTodos, function (err, res) {      if (err && err.message) return console.log('数据表创建失败', err.message);      console.log('数据表创建成功!');      // 表创建完毕关闭数据库      _this.end()    })  }  // 关闭数据库  end () {    this.con.end(function (err) {      if (err && err.message) return console.log('数据库关闭失败');      console.log('数据库关闭成功!');    })  }}new mysqlIns(config)

有什么不完善的地方 请在评论区 指出谢谢

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值