• 欢迎访问VPS岛网站,国外VPS,国内VPS,国外服务器,国内服务器,服务器主机,测评及优惠码,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站 QQ群

跟我一起学NodeJS,数据篇(MySQL)

mysql技术 mb5ff981a16d1dd 33次浏览 已收录 0个评论

在上一节的内容里,小编和大家一起学习了如何使用MongoDB数据库,今天小编就和大家一起学习目前比较主流的关系型数据库MySQL。

什么是MySQL?MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 最流行的关系型数据库管理系统。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
(来源百度百科)
在Node中引用MySQL模块 安装MYSQLwindows下安装方法,请参考百度经验网址http://jingyan.baidu.com/article/f3ad7d0ffc061a09c3345bf0.html
mac下安装方法,请参考百度经验网址http://jingyan.baidu.com/article/c843ea0b96f01877931e4a1d.html
引用MYSQL模块安装MySQL模块,示例代码如下:

$ npm install mysql

在Express项目中引用,示例代码如下

var mysql=require('mysql')

除了MySQL模块,同时还有类似其他高级语言使用的MYSQL的对象关系映射器(ORM)——node-seqelize。ORM提供了一个MYSQL数据库中的数据到JavaScript模型的映射,使得操作数据关系、数据处理变得更加容易。
如何使用MySQL模块简单示意

=();
=.({
  : ,
  : ,
  : });
.();
.(,(err,rows) {
  (err) err
  .(+rows[].solution);
  .();
});

了解 Connection Options
host:主机地址 (默认:localhost)user:用户名password:密码port:端口号 (默认:3306)database:数据库名timezone:时区(默认:’local’)connectTimeout:连接超时(默认:不限制;单位:毫秒)其它属性请查看官方网址https://github.com/mysqljs/mysqlMySQL服务器断开与重新连接当遇到网络问题,或者MySQL服务器重启,或者因为超过一段时间没有操作时,MySQL服务器会主动断开,这时就会触发一个error事件。为了保证程序能正常工作,我们需要监听这个事件,示例代码如下图:图片字符串转义问题在客户端输入的值在拼接SQL查询语句时,我们需要对这些值进行正确的转义,以防止SQL的注入***。我们可以使用escape()方法进行转义。

=;
=+connection.();
connection.(,(err,results) {

})

另外,还可以在SQL语句中将要转义的值用问号?来代替,在调用query()方法时传入这些转义的值:

connection.(,[a,b],(err,results) {
})

seqelize的使用安装

npm install sequelize

连接数据库

= ();
= (, , , {: , : , : });

定义模型

= sequelize.define(, {
 : {: Sequelize.INTEGER, : , : , : },
: {: Sequelize.STRING, : },
: {: Sequelize.TEXT, : },

: {: Sequelize.DATE, : Sequelize.NOW}});

创建表

Task.sync().(, (){
  .();}).(, (){
  .();});

select查询

Task.findAll({: , : }, {: , : , : }).(, (res){
  .(res);}).(, (err){
  .(err);})

count运算

Task.({: {: }}, {: }).(, 
    (i){
  .(i);}).(, (err){
  .(err);});

max与min运算

Task.().(, (max){
  .(max);}).(, (err){
  .(err);});

添加数据

Task.({: , : })
    .(, (msg){
  .(msg);})
    .(, (err){
  .(err);});

更新数据

Task.({: }, {: })
    .(, (msg){
  .(msg);})
    .(, (err){
  .(err);});

删除数据

Task.({: })
    .(, (msg){
  .(msg);})
    .(, (err){
  .(err);});


VPS岛 的文章和资源来自互联网,仅作为参考资料,如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。丨 转载请注明跟我一起学NodeJS,数据篇(MySQL)
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址