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

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

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

一.mysql数据库:

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

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

建立链接(localhost:3306):

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

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

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

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

二.node服务器:

安装:npm i mysql

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

新建test.js

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

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

//这中间的是操作!!↓(增删查改,随你开心!!!)
// 需要学数据库的代码
// 这是增数据,顺序执行!!!!!
var addSql = 'INSERT INTO websites(Id,name,url,alexa,country) VALUES(3,?,?,?,?)';
var addSqlParams = ['菜鸟', 'https://c.xxrunoob.com', '45643', 'CN']; //这是想增加的数据
//增
connection.query(addSql, addSqlParams, function (err, res) { //询问访问数据库,也就是去嫩那个数据库
if (err) { //失败就报个错
console.log('[INSERT ERROR] - ', err.message);
return;
}
console.log("数据库增的结果:");
console.log(res);
}); // 这是删除数据。
var delSql = 'DELETE FROM websites where id=6'; //数据库代码,websites表中删除id为6的那一行。
//删
connection.query(delSql, function (err, res) { //询问访问数据库,也就是去嫩那个数据库
if (err) {
console.log('[DELETE ERROR] - ', err.message);
return;
}
console.log("数据库删的结果:");
console.log(res);
}); //这是改数据。
var modSql = 'UPDATE websites SET Id= ?,url = ? WHERE name = ?';//改name为菜鸟移动站的数据!把其id和url改掉!
var modSqlParams = [11, 'https://huage.com', '菜鸟移动站'];
//改
connection.query(modSql, modSqlParams, function (err, res) {
if (err) {
console.log('[UPDATE ERROR] - ', err.message);
return;
}
console.log("数据库删的结果:");
console.log(res);
}); //查,数据库代码
var sql = 'SELECT * FROM websites';
connection.query(sql, function (err, res) { //询问访问数据库,也就是去嫩那个数据库
if (err) { //失败就报个错。
console.log('[SELECT ERROR] - ', err.message);
return;
}
console.log("数据库查的结果:");
console.log(res); //成功就输出下结果
}); //这中间的是操作!!↑

基本就这些,简单的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. 牛客网暑期ACM多校训练营(第三场)---A.PACM Team

    链接:https://www.nowcoder.com/acm/contest/141/A 来源:牛客网 题目描述 Eddy was a contestant participating in ACM ...

  2. 【Offer】[19] 【字符串匹配】

    题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 请实现一个函数用来匹配包括'.'和'*'的正则表达式. 模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含 ...

  3. 使用图灵机器人api搭建微信聊天机器人php实现

    之前通过hook技术实现了微信pc端发送消息功能,如果在结合图灵机器人就能实现微信聊天机器人. 代码下载:http://blog.yshizi.cn/131.html 逻辑如下: 下面我简单介绍一下步 ...

  4. java解决回文数

    递归解决palindrome问题 如果String仅仅只是一个或者0个字符,则它就是palindrome 否则比较字符串第一个和最后一个字符 如果第一个和最后一个字符不同,那么就不是palindrom ...

  5. Loadrunner 11 的安装

    安装包可以直接在我的百度网盘下载,这里用的是LR11的版本.电脑系统是win7 链接: https://pan.baidu.com/s/1OApfUemG3oVjLUE79qaikw 提取码: 7n3 ...

  6. golang中Array与Slice

    在golang中有数组和Slice两种数据结构,Slice是基于数组的实现,是长度动态不固定的数据结构,本质上是一个对数组字序列的引用,提供了对数组的轻量级访问.那么在go的函数中以数组或Slice为 ...

  7. J2EE简单的分页器

    J2EE项目特别是后台管理,或者一部分前台展示数据比较多,通常需要分页把展示折叠在数据区内. 一般有几种方式来实现分页, 一是官方分页插件,二是自己写,三是网上找(类似于第一种) 这里就介绍第二种, ...

  8. 关于纯xmlhttprequest请求服务器数据

    今天我们的web技术已经相当的完善, 各种前端框架如jquery或者再深一点的工具APIcloud 的使用极大的方便了我们的开发工作. 今天我要分享一个纯javascript的方式来解决请求服务器数据 ...

  9. 【数据结构】什么是AVL树

    目录 什么是AVL树 1. 什么是AVL树 2. 节点的实现 3. AVL树的调整 3.1 LL旋转 3.2 RR旋转 3.3 RL旋转 3.4 LR旋转 什么是AVL树 二叉查找树的一个局限性就是有 ...

  10. Linux 修改 ls 时间显示格式

    [root@CentosTe tmp]# export TIME_STYLE='+%Y-%m-%d %H:%M:%S'[root@CentosTe tmp]# ll总计 24-rwx------ 1  ...