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. windows10环境下安装深度学习环境anaconda+pytorch+CUDA+cuDDN

    步骤零:安装anaconda.opencv.pytorch(这些不详细说明).复制运行代码,如果没有报错,说明已经可以了.不过大概率不行,我的会报错提示AssertionError: Torch no ...

  2. 原来JS是这样的 - 对象属性

    引子 在上一篇(原来JS是这样的 (2))刚发布的时候就阅读了那篇文章的人可能会注意到那篇曾用过"JavaScript 中万物皆对象"的说法,而在随后我发现错误后立即更新改掉了这个 ...

  3. java 面试题 1-10

    1. Java 基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法, 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 1.一个".java&q ...

  4. vsnprint参数和意义

    _vsnprintf(char *str, size_t size, const char *format, va_list ap) char *str [out],把生成的格式化的字符串存放在这里. ...

  5. NetCore+AutoMapper多个对象映射到一个Dto对象

    目录 一. 定义源映射类和被映射类DTO二.注入AutoMapper三.配置映射四.写测试 一.定义源映射对象 为了体现AutoMapper映射特性,在SocialAttribute中的Name属性没 ...

  6. 〈三〉ElasticSearch的认识:搜索、过滤、排序

    目录 上节回顾 本节前言 文档的搜索 URL参数条件搜索 请求体条件搜索 语法与示例: 补充: 小节总结: 文档的过滤filter 语法与举例: filter与bool constant_score ...

  7. 08 (OC)* 事件的传递和响应机制

    前言:苹果的官方文档<Event Handling Guide for iOS>对事件处理做了非常详尽清晰的解释,建议大家仔细研读 1. iOS中的事件介绍 2. 事件的产生和传递 3. ...

  8. 实现一个正则表达式引擎in Python(二)

    项目地址:Regex in Python 在看一下之前正则的语法的 BNF 范式 group ::= ("(" expr ")")* expr ::= fact ...

  9. (转)阿里云CentOS 7下配置及使用mysql

    一.安装 1 正确的安装方法: 众所周知,Linux系统自带的repo是不会自动更新每个软件的最新版本(基本都是比较靠后的稳定版),所以无法通过yum方式安装MySQL的高级版本.所以我们需要先安装带 ...

  10. Transformer各层网络结构详解!面试必备!(附代码实现)

    1. 什么是Transformer <Attention Is All You Need>是一篇Google提出的将Attention思想发挥到极致的论文.这篇论文中提出一个全新的模型,叫 ...