node链接MySQL,oracle,MongoDB数据库

  • 链接MySQL
     

       参考网址:https://www.npmjs.com/package/mysql
      cnpm install mysql --save​
    const mysql = require("mysql");
    const mysqlOptions = {
      host: "127.0.0.1", //数据库主机名
      user: "root",
      password: "zhaoqi521",
      database: "mysql",
    };
    let connection = mysql.createConnection(mysqlOptions);
    // connection.connect();
    let s = "select * from student";
    connection.query(s, function (error, res) {
      if (error) throw error;
      console.log(res);
    });
    //当插入成功
    // var sqlString="insert into users values(?,?)";//注意字段个数,和表名别错
    // result.affectedRows==1;//影响行数
      let s = `select * from indexList WHERE name="阿里巴巴"`;
      let update = `UPDATE indexList SET 
            name="阿里巴巴"
          WHERE score="20"`;
      let i = `insert into indexList (name,score) value ('联想',30);`;
      let d = `DELETE from indexList WHERE score=30`;
    
    表的增删改查
    ​​​​​​​- Mac安装MySQL并用node链接记录-
    
  • 报错:ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
    
    // 1、登录MySQL,使用命令
    mysql -u root -p
    // 回车后需要输入密码
     
    // 2、修改加密规则
    ALTER USER 'root'@'localhost' IDENTIFIED BY '你的root密码' PASSWORD EXPIRE NEVER;
     
    // 3、更新用户密码
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的root密码';
     
    // 4、刷新权限
    FLUSH PRIVILEGES;
     
    // 5、重置密码
    alter user 'root'@'localhost' identified by '你的密码';
    
    这里用的终端-也可以放navcat链接数据库后执行--
    报错提示
    原因:
    
    MySQL8.0 默认的密码验证方案是 caching_sha2_password,而 NodeJs 默认密码验证方案是 mysql_native_password,所以即使密码是正确的,但是还是验证不了依旧会报错。

  • 链接mongoDB

    // 链接数据库
      var mongoose=require('mongoose');
      mongoose.connect('mongodb://localhost:27018',function (err) {
          if(err){
      ​
          }else{
              app.listen(8083);//设置监听
          }
      })
      ​
      mongod --dbpath=f:/mongodb --port=27018

  • 链接oracle

      需要的话可以去oracle官网下载然后合并----base和SDK两个或者去E盘APP
      oracle数据登录227QQ;密码Zhaoqi521
      1---------把客户端也就是instantclient文件放到哪都行应该(我放到oracle目录下)
      2---------配置环境变量
      A--系统变量
          名OCI_INC_DIR值F:\oracle\instantclient_18_5\include
          名OCI_LIB_DIR值F:\oracle\instantclient_18_5\msvc
          名OCI_VERSION值18
      B----path--注意下面两个的先后顺序
          F:\oracle\instantclient_18_5\vc14
          F:\oracle\instantclient_18_5
      ​
      3-----安装应用程序
      ​
      4-----安装oracleDB
      cnpm install oracledb
      5----代码
    
      var oracledb = require('oracledb');
      var config = {
          user:'system',
          password:'manager',
          connectString : "127.0.0.1:1521/orcl"
      };
      oracledb.getConnection(
          config,
          function(err, connection) {
              if (err) {
                  console.error(err.message);
                  return;
              }
              connection.execute("select patient_id from doctor_orders where rownum<=10 order by patient_id",
                  function(err, result)
                  {
                      if (err) {
                          console.error(err.message);
                          doRelease(connection);
                          return;
                      }
                      //打印返回的表结构
                      console.log(result.metaData);
                      //打印返回的行数据
                      console.log(result.rows);
                  });
          });
      function doRelease(connection) {
          connection.close(
              function(err) {
                  if (err) {
                      console.error(err.message);
                  }
              });
      }
      ​
      6---oracledb开发文档---该文档由oracle公司维护很多,不要看哈哈
      https://oracle.github.io/node-oracledb/doc/api.html
      ​
      ​
      7---遇到的问题及解决
        A。SQL结尾语句不能有;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值