节点中怎么连接mysql数据库

  

节点中怎么连接mysql数据库,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

npm  install ,,节省mysql

使用上述命令安装完mysql的模块后,就可以直接使用了,官网的文档里一个简单的例子如下就可以入门了。

var  mysql =,要求(& # 39;mysql # 39;);   var  connection =, mysql.createConnection ({   主持人:大敌;& # 39;localhost # 39;   ,用户:& # 39;我# 39;   ,password : & # 39;秘密# 39;   ,database : & # 39; my_db& # 39;   });   connection.connect ();   connection.query (& # 39; SELECT  1, +, 1, AS 解决方案# 39;,,函数(呃,,行,,字段),{   ,if (错),throw 犯错;   ,console.log(& # 39;从而solution 是:,& # 39;,,行[0].solution);   });   connection.end ();

很简单的一个例子,从上面的例子可以得出:使用createConnection(选项)方法创建一个连接对象,然后连接对象的connect()方法创建连接,最后使用查询()方法执行SQL语句,返回结果作为回调函数的参数行返回,为行数组类型。

<强> 1。连接

创建连接对象,需要传入连接数据库的一些连接参数,也就是createConnection(选项)里的选项,选项是一个对象,以键值对的形式传入createConnection()方法里。上例列举出了最基本的参数:

<李>

主机主机名

<李>

用户连接数据库的用户

<李>

密码密码

<李>

数据库数据库名称

还有其他的参数,可以查询下官方文档,这里不一一列举了,初期学习上面这些参数就足以。

<强> 2。关闭

关闭一个连接使用结束()方法,结束()方法提供一个回调函数,如下:

connect.end(函数(err) {   console.log才能(& # 39;最终获得a 连接# 39;);   });

这是建议使用的方法,结束()方法会等待连接回调完成后才关闭连接。官方还提供了另外一种方法破坏()方法,这个方法直接关闭连接,不会等待回调完成。

举个简单的例子:

var  mysql =,要求(& # 39;mysql # 39;);   var  option =,要求(& # 39;。/connect.js& # 39;) .option;   var  conn =, mysql.createConnection(选项);   conn.query (& # 39; select  *,得到消息# 39;,函数(犯错、行字段){   ,如果(!犯错){   console.log才能(行);   ,}   });   conn.end(函数(err) {   ,console.log(& # 39;最终获得a 连接# 39;);   });

最终结果会是:先打印完选择数据表结果后,再打印结束连接。而如果你将关闭方法换成conn.destroy();,那么你就别想返回任何结果了,因为还没等回调结束就已经终止连接了。

<强> 3。连接池

连接池的原理是一开始就给你创建多个连接对象放在一个“池”子里,用的时候取一个,用完了放回“池子”里,在一定程度上是有利于节省系统开销的,因为连接对象是在最开始的时候就创建好了,使用的时候不再需要系统开销去创建数据库连接对象。官方医生介绍了连接方法:

var  mysql =,要求(& # 39;mysql # 39;);   var  pool =, mysql.createPool ({   ,connectionLimit : 10   ,host ,,,,,, & # 39; example.org& # 39;   ,user ,,,,,, & # 39;鲍勃# 39;   ,password ,,:, & # 39;秘密# 39;   ,database ,,:, & # 39; my_db& # 39;   });   pool.query (& # 39; SELECT  1, +, 1, AS 解决方案# 39;,,函数(呃,,行,,字段),{   ,if (错),throw 犯错;   ,console.log(& # 39;从而solution 是:,& # 39;,,行[0].solution);   });

创建连接池的方法是createPool(选项),选项里多了一个参数connectionLimit指的是一次性在连接池里创建多少个连接对象,默认10个。如果你想共享一个连接对象,可以使用下面方法进行连接;

var  mysql =,要求(& # 39;mysql # 39;);   var  pool =, mysql.createPool ({   ,host ,:, & # 39; example.org& # 39;   ,user ,:, & # 39;鲍勃# 39;   ,password : & # 39;秘密# 39;   ,database : & # 39; my_db& # 39;   });   pool.getConnection(函数(呃,,连接),{   ,//Use ,从而连接   ,connection.query (& # 39; SELECT  something 得到sometable& # 39;,,函数(呃,,行),{//才能,以及done  with ,从而连接。   connection.release才能();//才能,不要# 39;t  use 从而connection 在这里,,it  has  been  returned 用,池。   ,});//Use ,从而连接   ,connection.query (& # 39; SELECT  something2 得到sometable2& # 39;,,函数(呃,,行),{//才能,以及done  with ,从而连接。   connection.release才能();//才能,不要# 39;t  use 从而connection 在这里,,it  has  been  returned 用,池。   ,});   });

节点中怎么连接mysql数据库