node与mysql的相互使用————node+mysql

为什么选node???因为我是个前端。

为什么选mysql???因为成熟,稳定,听说容易学。

一.mysql数据库:

mysql下载和使用我这里不细说。东西挺多的。

先下个Navicat premium用于直观的操作数据库,让数据库看得见,摸得着。

建立链接(localhost:3306):

新建个数据库,命名为test1。(这名字有用的!)

数据库代码(点查询,可以编写代码):

  1. //创建一个表,表定义的数据包括:Id,name,url,alexa,country。(后面跟着的是数据类型)
  2. create table websites (Id varchar(10),name varchar(20),url varchar(20),alexa varchar(20),country varchar(20));
  3. //增加一组数据,上面是定义有什么数据,下面才是真正的放数据进去!!!
  4. insert into websites (Id,name,url,alexa,country) values ('1','华哥工具','https://baidu.com','23234','USA');
  5. //查看表格,可以把他当成保存数据,来看。
  6. select * from websites;

运行后。就会有一个叫websites的表格出现!

二.node服务器:

安装:npm i mysql

有个mysql依赖,才可以调用mysql呀。

新建test.js

  1. //链接数据库!!!
  2. var mysql = require('mysql');
  3. //把数据库的密码,账号,地址,端口,表格都连接上!!
  4. var connection = mysql.createConnection({
  5. host: 'localhost',
  6. user: 'root',
  7. password: 'root',
  8. port: '3306',
  9. database: 'test1'//上文说的名字
  10. });
  11. connection.connect(); //启动连接!!!!
  12. //这中间的是操作!!↓(增删查改,随你开心!!!)
  13. // 需要学数据库的代码
  14. //这中间的是操作!!↑
  15. connection.end(); //结束连接!!!不能一直连着!!

这就是数据库的链接,当然还没有操作。只是链接数据库而已↑

  1. //这中间的是操作!!↓(增删查改,随你开心!!!)
  2. // 需要学数据库的代码
  3. // 这是增数据,顺序执行!!!!!
  4. var addSql = 'INSERT INTO websites(Id,name,url,alexa,country) VALUES(3,?,?,?,?)';
  5. var addSqlParams = ['菜鸟', 'https://c.xxrunoob.com', '45643', 'CN']; //这是想增加的数据
  6. //增
  7. connection.query(addSql, addSqlParams, function (err, res) { //询问访问数据库,也就是去嫩那个数据库
  8. if (err) { //失败就报个错
  9. console.log('[INSERT ERROR] - ', err.message);
  10. return;
  11. }
  12. console.log("数据库增的结果:");
  13. console.log(res);
  14. });
  15. // 这是删除数据。
  16. var delSql = 'DELETE FROM websites where id=6'; //数据库代码,websites表中删除id为6的那一行。
  17. //删
  18. connection.query(delSql, function (err, res) { //询问访问数据库,也就是去嫩那个数据库
  19. if (err) {
  20. console.log('[DELETE ERROR] - ', err.message);
  21. return;
  22. }
  23. console.log("数据库删的结果:");
  24. console.log(res);
  25. });
  26. //这是改数据。
  27. var modSql = 'UPDATE websites SET Id= ?,url = ? WHERE name = ?';//改name为菜鸟移动站的数据!把其id和url改掉!
  28. var modSqlParams = [11, 'https://huage.com', '菜鸟移动站'];
  29. //改
  30. connection.query(modSql, modSqlParams, function (err, res) {
  31. if (err) {
  32. console.log('[UPDATE ERROR] - ', err.message);
  33. return;
  34. }
  35. console.log("数据库删的结果:");
  36. console.log(res);
  37. });
  38. //查,数据库代码
  39. var sql = 'SELECT * FROM websites';
  40. connection.query(sql, function (err, res) { //询问访问数据库,也就是去嫩那个数据库
  41. if (err) { //失败就报个错。
  42. console.log('[SELECT ERROR] - ', err.message);
  43. return;
  44. }
  45. console.log("数据库查的结果:");
  46. console.log(res); //成功就输出下结果
  47. });
  48. //这中间的是操作!!↑

基本就这些,简单的node使用数据库。

node与mysql的相互使用————node+mysql的更多相关文章

  1. 在Node.js使用Promise的方式操作Mysql

    最近在学习Node.js,虽然早就听说了回调地狱结果过了一周就遇到了.所以花时间学习了了一下Promise.虽然还有Async/await.co.生成器等选择,但是因为本人基础较差,以及时间问题所以决 ...

  2. vue+express+mysql项目总结(node项目部署阿里云通用)

    原文发布于我的个人博客上:原文点这里   前面经历千辛万苦,终于把博客的所有东西都准备好了,现在就只等部署了.下面我介绍下我的部署过程: 一.购买服务器和域名   如果需要域名(不用域名通过ip也可以 ...

  3. 性能追击:万字长文30+图揭秘8大主流服务器程序线程模型 | Node.js,Apache,Nginx,Netty,Redis,Tomcat,MySQL,Zuul

    本文为<高性能网络编程游记>的第六篇"性能追击:万字长文30+图揭秘8大主流服务器程序线程模型". 最近拍的照片比较少,不知道配什么图好,于是自己画了一个,凑合着用,让 ...

  4. mysql类似to_char()to_date()函数mysql日期和字符相互转换方法date_f

    mysql 类似to_char() to_date()函数mysql日期和字符相互转换方法 date_format(date,'%Y-%m-%d') -------------->oracle中 ...

  5. MySql(十一):MySQL性能调优——常用存储引擎优化

    一.前言 MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.本章将介绍最为常用的两种存储引擎进行针对性的优化建议. 二.MyISAM存储 ...

  6. MySQL监控模板说明-Percona MySQL Monitoring Template for Cacti

    http://blog.chinaunix.net/uid-16844903-id-3535535.html https://www.percona.com/doc/percona-monitorin ...

  7. debian系列下c++调用mysql, linux下面安装mysql.h文件

    mysql.h的报错还没有解决,你们不用看了,等我解决了吧还不知道什么时候 先用c吧 #include <stdio.h> #include <stdlib.h> #inclu ...

  8. node的重点学习笔记(1)————node

    node的重点学习笔记(1)----node 提到node就必须提一下他的npm了,npm是世界上最大的开放源代码的生态系统.通俗来说这就如同亚马逊丛林,要啥物种有啥物种,一个巨大的生态圈,里面有一堆 ...

  9. MySQL(十三)之MySQL事务

    前言 这段时间自己会把之前学的东西都总结一遍,希望对自己以后的工作中有帮助.其实现在每天的状态都是很累的,但是我要坚持! 进入我们今天的正题: 为什么MySQL要 有事务呢?事务到底是用来干什么的?我 ...

随机推荐

  1. mysql 主主从配置

    配置主服务器:主服务器1 Ip:  192.168.0.1 主服务器2 Ip:  192.168.0.2 主服务器1配置 2.1.修改mysql配置文件 vim /etc/my.conf Server ...

  2. 【Offer】[57-2] 【和为S的连续正数序列】

    题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 输入一个正数s,打印出所有和为s的连续正数序列(至少含有两个数).例如,输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以 ...

  3. 【Offer】[53-2] 【0~n-1中缺失的数字】

    题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内.在范围0~n-1内的n个数字中有且只有一个数字 ...

  4. 洛谷 P1525 关押罪犯 NOIp2010提高组 (贪心+并查集)

    题目链接:https://www.luogu.org/problemnew/show/P1525 题目分析 通过分析,我们可以知道,这道题的抽象意义就是把一个带边权的无向图,分成两个点集,使得两个集合 ...

  5. 玩转 SpringBoot 2 快速整合 | FreeMarker篇

    FreeMarker 介绍 Apache FreeMarker™是一个模板引擎:一个Java库,用于根据模板和更改数据生成文本输出(HTML网页,电子邮件,配置文件,源代码等).模板是用FreeMar ...

  6. mybatis拦截器实现通用权限字段添加

    实现效果 日常sql中直接使用权限字段实现权限内数据筛选,无需入参,直接使用,使用形式为:select * from crh_snp.channelinfo where short_code in ( ...

  7. Redis的实现(java)

    日常操作 public static void main(String[] args) { Jedis jedis = ); //1.开启事务 Transaction transaction = je ...

  8. Mysql高手系列 - 第13篇:细说NULL导致的神坑,让人防不胜防

    这是Mysql系列第13篇. 环境:mysql5.7.25,cmd命令中进行演示. 当数据的值为NULL的时候,可能出现各种意想不到的效果,让人防不胜防,我们来看看NULL导致的各种神坑,如何避免? ...

  9. git使用笔记-git项目的建立及配置、创建子分支及独立分支、分支重命名

    一.git的基本使用 1.下载安装git (略) 2.配置gitconfig 配置内容:(主要是你的git的账户信息,提交命令的别名) 3.配置git公钥(输入$ ssh-keygen -t rsa ...

  10. js中对时间的操作

    我们先来看一下如何获取当前时间: var date = new Date() //输出:Tue Jul 02 2019 10:36:22 GMT+0800 (中国标准时间) 紧接着,我们来获取相关参数 ...