Node.js:连接Mysql、JXcore打包

Node.js连接Mysql

通过Node.js连接Mysql并且通过其对数据库进行操作

安装驱动
bash 复制代码
cnpm install mysql
连接数据库

下面是一个实例用于配置连接信息

js 复制代码
let mysql = require('mysql');
let connection = mysql.createConnection({
    host:'localhost',
    user:'root',
    password:'123456',
    database:'test'
});
connection.connect();
connection.query('SELECT 1 + 1 AS solution', function(error, results, fields){
    if(error) throw error;
    console.log("The solution is: ", results[0].solution);
});

输出结果为:

bash 复制代码
The solution is: 2

有关的连接参数说明

https://github.com/mysqljs/mysql

数据库操作说明
  • 查询数据
js 复制代码
connection.connect();
let sql = 'SELECT * from websites';
connection.query(sql, function(err, result){
    if(err){
        console.log('[SELECT ERROR]-', err.message);
        return;
    }
    console.log(result);
});
connetion.end();

输出结果为:

bash 复制代码
[ RowDataPacket {
    id: 1,
    name: 'Google',
    url: 'https://www.google.cm/',
    alexa: 1,
    country: 'USA' },
  RowDataPacket {
    id: 2,
    name: '淘宝',
    url: 'https://www.taobao.com/',
    alexa: 13,
    country: 'CN' },
  RowDataPacket {
    id: 3,
    name: '菜鸟教程',
    url: 'http://www.runoob.com/',
    alexa: 4689,
    country: 'CN' },
  RowDataPacket {
    id: 4,
    name: '微博',
    url: 'http://weibo.com/',
    alexa: 20,
    country: 'CN' },
  RowDataPacket {
    id: 5,
    name: 'Facebook',
    url: 'https://www.facebook.com/',
    alexa: 3,
    country: 'USA' } ]
  • 插入数据
js 复制代码
let addSql = 'INSERT INTO websites(ID, name, url, alexa, country) VALUES(0, ?, ?, ?, ?)';
let addSqlParams = ['菜鸟工具', 'https://c.runoob.com','23453', 'CN'];
connection.query(addSql,addSqlParams,function (err, result) { 
    if(err){ 
        console.log('[INSERT ERROR] - ',err.message); 
        return; 
      }
      connection.log('INSERT ID: ', result);
connection.end();
  • 更新数据
js 复制代码
let modSql = 'UPDATE websites SET name=?, url=? WHERE id=?';
let modeSqlParams = ['菜鸟移动站', 'https://m.runoob.com', 6];
connection.query(modSql, modSqlParams, function(err, result){
    if(err){
        console.log('[UPDATE ERROR]-', err.mesage);
        return;
    }
    console.log('UPDATE affectedRows', result.affectedRows );
});
connection.end();
  • 删除数据
js 复制代码
let delSql = 'DELECT FROM websites where id = 6';
connection.query(delSql, function(err, result){
   if(err){
        console.log('[DELETE ERROR]-', err.message);
        return;
   } 
   console.log('DELETE affectedRows', result.affectedRows);
});
connection.end();

Node.js JXcore打包

JXcore是一个支持多线程的Node.js发行版本,基本上不需要对现有的代码进行改动就可以直接安全的以多线程的模式来安全运行。

JXcore

下载并且安装JXcore,不赘述

打包代码
bash 复制代码
jx package index.js index

会生成两个文件

index.jxp和index.jx

index.jxp包含了需要编译的完整项目信息

index.jx是一个完整的包信息的二进制文件,可以运行在客户端上面

运行方式

bash 复制代码
jx index.jx command_line_arguments
相关推荐
钊兵22 分钟前
mysql时间处理函数和操作笔记
数据库·笔记·mysql
程序员JerrySUN22 分钟前
Linux 内核基础统简全解:Kbuild、内存分配和地址映射
java·linux·运维·服务器·嵌入式硬件·缓存·文件系统
掘根23 分钟前
【MySQL数据库备份与恢复1】二进制日志,mysqlbinlog
数据库·mysql
lixzest1 小时前
快速梳理遗留项目
java·c++·python
编程爱好者熊浪1 小时前
Navicat 远程连接SQLlite数据库
数据库
xnglan1 小时前
使用爬虫获取游戏的iframe地址
开发语言·爬虫·python·学习
某个默默无闻奋斗的人1 小时前
【矩阵专题】Leetcode54.螺旋矩阵(Hot100)
java·算法·leetcode
zhysunny1 小时前
04.建造者模式的终极手册:从快餐定制到航天飞船的组装哲学
java·开发语言·建造者模式
郝学胜-神的一滴2 小时前
建造者模式:构建复杂对象的优雅方式
开发语言·c++·程序人生·建造者模式
AAIshangyanxiu2 小时前
最新基于R语言结构方程模型分析与实践技术应用
开发语言·r语言·结构方程模型·生态统计学