资讯专栏INFORMATION COLUMN

学习NodeJS链接MySql(二)

BicycleWarrior / 1700人阅读

摘要:查表名星号的意思是所有,这句话意思为查询所有,也就是把表单所有与打印出来同样的,利用关键字可以实现精准查询。

在Node中链接MySql的方法

在Node中链接MySql有两种方法,一种是用Pool,一种是用Connection

首先放出个代码模板

/** 数据库查询
 * 1、链接数据库
 * 2、获取链接,连接可能失败
 */
var mysql = require("mysql");
// console.log(mysql);

//这是后端链接数据库的线
//                          数据库地址:本地    用户名:root    密码:123456    数据库名:20190603    -port(端口):可以改
var pool = mysql.createPool({"host":"localhost","user":"root","password":"123456" ,"database":"20190605"}); 
// console.log(pool);

// pool.connect();

//异步链接数据库
//获取链接,可能失败,在connection.query 中写sql 语句
pool.getConnection(function(err, connection){
    if(err) {
        console.log("连接失败"+err);
    }else {
        //                关键字    关键字  表名     处理方法
        connection.query("SELECT * FROM `user`;", function(err, data){
            if(err) {
                console.log(err);
            }else {
                console.log(data);
                connection.end();
            }
        })
    }
})
Connection方法
var mysql      = require("mysql");
var 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);
});
MySql的增删改查
增:

INSERT INTO `表名` (`key`,`key2`,...) VALUES("value","value2",...);
这里要注意的是,表名和key值括起来的不是单引号,而是右上角esc键下方的 `,需要在英文输入下输入

删:

DELETE FROM `表名`
注意:如果直接输入这行的话是删除整个数据库,如果一不小心真的删除了就跑路吧
那么怎么才能精准删除我们所想删的呢 - where关键字能够帮助我们精准定位。

DELETE FROM `表名` WHERE "key"="value"
假设key值是ID,user,passvalue值是0,user,123那么删除这行用其特定的唯一的其他行数据没有的值来做筛选条件就可以了,假设ID为0是其他行数据没有的唯一存在,那么
DELETE FROM `表名` WHERE `ID`="0";就可以删除这一行数据了

改:

UPDATE `表名` SET key="new value" WHERE key="value"
同样假设其改变的值有唯一的key值,key=ID,value=0;
`UPDATE `表名` SET ID="1" WHERE ID="0"
这样就将ID从0改为1了。

查:

SELECT * FROM `表名`
星号的意思是所有,这句话意思为查询所有key,也就是把表单所有keyvalue打印出来
同样的,利用关键字WHERE可以实现精准查询。
SELECT user,pass FROM `user
这句话的意思是想查询user与pass的数据,想用多个key做查询条件增加特定性的话多个key中间用逗号分开
SELECT user,pass FROM `user` WHERE user="bill"
想查询user与pass,并且user的值为bill的数据

当然,sql语句支持一些运算符,可以查询某个范围的值

SELECT * FROM `user` WHERE `password`>100
SELECT * FROM `user` WHERE `password`!=0
‘与’子句(&&) => AND

AND 和 与JS的(&&)符号一样 所有AND 后的条件都必须满足
SELECT key,key2 FROM `tabName` WHERE key=" " AND key2=""

‘或’子句(||) => OR

OR 和 JS的(||)符号一样 所有OR 后的条件可有可无
SELECT key,key2 FROM `tabName` WHERE key="" OR key2=""

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/104514.html

相关文章

  • 学习NodeJs链接MySql(一)

    摘要:学习与的连接一的特点介绍适合初学者的原因是因为它免费,且小,操作相对简单。 学习NodeJs与MySql的连接(一) MySql的特点介绍 mysql适合初学者的原因是因为它免费,且小,操作相对简单。 MySql的下载安装 官网 点击community,左侧栏点击mysql on windows MySql install 滑到页面最下方选择最大的那个 附带链接:MySql Ser...

    kviccn 评论0 收藏0

发表评论

0条评论

BicycleWarrior

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<