当前位置: 首页 > news >正文

做网站犯法吗网站关键词优化软件

做网站犯法吗,网站关键词优化软件,为什么我的wordpress这么丑,做网站用go语言还是php概述 在Node.js中,mysql模块是实现MySQL协议的JavaScript客户端工具。Node.js程序通过与MySQL建立链接,然后可对数据进行增、删、改、查等操作。 安装 由于mysql模块不是Node.js内置模块,需手动安装 npm i mysql注意:若MySQL服…

概述

Node.js中,mysql模块是实现MySQL协议的JavaScript客户端工具。Node.js程序通过与MySQL建立链接,然后可对数据进行等操作。

安装

由于mysql模块不是Node.js内置模块,需手动安装

npm i mysql

注意:若MySQL服务的版本高于8.0.4时,请安装mysql2模块,否则连接时会出现身份验证错误。

使用

连接数据库

mysql.createConnection(options) // 返回 Connection 对象

参数说明:

  • options 配置参数
    • host 主机地址。默认为localhost
    • user 用户名
    • password 密码
    • port 端口号。默认为3306
    • database 数据库名
    • charset 字符集。默认为UTF8_GENERAL_CI
    • localAddress 此IP用于TCP连接
    • socketPath 连接到 unix 域路径,有值会忽略 hostport
    • timezone 时区。默认为local
    • connectTimeout 连接超时时长,单位 毫秒。默认为不限制
    • stringifyObject 是否序列化对象
    • dateStrings 强制将timestampdatetimedate类型以字符串型返回。默认为false
    • multipleStatements 是否允许一个 query 中有多个 mysql 语句。默认为false

Connection 方法

方法说明
connect() 建立连接
query(sql[, values][, callback])对数据库进行等操作
end()在确保当前正在处理的 SQL 语句正常完成后断开连接
destroy()立即断开连接,不管当前是否正在执行任务

Connection 属性

属性说明
threadId 当前连接线程 ID
// 引入 mysql 模块
const mysql = require('mysql')// 创建连接对象
const conn = mysql.createConnection({host: '127.0.0.1',port: '3306',database: 'node_db',user: 'root',passord: '123456'
})// 建立连接
conn.connect()

操作数据库

查询数据
const mysql = require('mysql2')// 创建 Connnection 实例
const conn = mysql.createConnection({host: '127.0.0.1',port: 3306,database: 'db',user: 'root',password: '123456'
})// 建立连接
conn.connect()// 无查询条件
const sql1 = "select * from talbe_name"
conn.query(sql1, (err, result) => {if (err) {console.error("查询数据出现异常:" + err.message)}console.log(result)
})// 有查询条件
const sql2 = "select * from talbe_name where col1 > ? and col2 = ? ..."
conn.query(sql2, [col1_val, col2_val, ...], (err, result) => {if (err) {console.error("查询数据出现异常:" + err.message)}console.log(result)
})// 管理连接
conn.end()

注意:通过query()查询,获取的数据结果为一个数组。

插入数据
const mysql = require('mysql2')// 创建 Connection 实例
const conn = mysql.createConnection({host: "127.0.0.1",port: 3306,database: "db",user: "root",password: "123456"
})// 建立连接
conn.connect()/****************** 插入操作 *********************/
const sql1 = "insert into talbe_name values(?, ?, ...)"
conn.query(sql1, [col1_val, col2_val, ...], (err, data) => {if (err) {console.error("插入数据出现异常:" + err.message)}// 判断数据是否插入成功if (data.affectedRows !== 1) {console.error("插入数据失败")}console.log("数据插入成功")
})const sql2 = "insert into (col1, col2, ...) talbe_name values(?, ?, ...)"
conn.query(sql2, [col1_val, col2_val, ...], (err, data) => {if (err) {console.error("插入数据出现异常:" + err.message)}// 判断数据是否插入成功if (data.affectedRows !== 1) {console.error("插入数据失败")}console.log("数据插入成功")
})// 此种方式中 query中的第二个参数名必须和数据库中表的名称一样
const sql3 = "insert into talbe_name set ?"
conn.query(sql3, xx, (err, data) => {if (err) {console.error("插入数据出现异常:" + err.message)}// 判断数据是否插入成功if (data.affectedRows !== 1) {console.error("插入数据失败")}console.log("数据插入成功")
})// 断开连接
conn.end()
修改数据
const mysql = require('mysql2')// 创建 Connection 实例
const conn = mysql.createConnection({host: "127.0.0.1",port: 3306,database: "db",user: "root",password: "123456"
})// 建立连接
conn.connect()/****************** 更新操作 *********************/
const sql1 = "updte user talbe_name col1 = ?, col2=?, ... where id = ?)"
conn.query(sql1, [col1_val, col2_val, ..., id_val], (err, data) => {if (err) {console.error("插入数据出现异常:" + err.message)}// 判断数据是否插入成功if (data.affectedRows !== 1) {console.error("插入数据失败")}console.log("数据插入成功")
})// 此种方式中 query中的第二个参数名必须和数据库中表的名称一样
const sql3 = "update talbe_name set ? where id = ?"
conn.query(sql3, [xx, id_val], (err, data) => {if (err) {console.error("更新数据出现异常:" + err.message)}// 判断数据是否插入成功if (data.affectedRows !== 1) {console.error("更新数据失败")}console.log("数据更新成功")
})// 断开连接
conn.end()
删除数据
const mysql = require('mysql2')// 创建 Connnection 实例
const conn = mysql.createConnection({host: '127.0.0.1',port: 3306,database: 'db',user: 'root',password: '123456'
})// 建立连接
conn.connect()// 无条件删除
const sql = "delete from talbe_name "
conn.query(sql1, (err, data) => {if (err) {console.error("删除数据出现异常:" + err.message)}// 判断数据是否删除成功if (data.affectedRows > 0) {console.error("删除数据失败")}console.log(result)
})// 有条件删除
const sql2 = "delete from talbe_name where id = ?"
conn.query(sql2, id_val, (err, data) => {if (err) {console.error("删除数据出现异常:" + err.message)}// 判断数据是否删除成功if (data.affectedRows !== 0) {console.error("删除数据失败")}console.log(result)
})// 管理连接
conn.end()

问题

连接报ER_NOT_SUPPORTED_AUTH_MODE错误

原因

MySQL 8.0.4开始,MySQL默认身份验证插件从 mysql_native_password改为caching_sha2_password所导致的。

解决方式

解决方式有两种:

  1. 身份验证插件改 mysql_native_password
  2. 安装 mysql2模块

文章转载自:
http://commodious.kzrg.cn
http://glyconic.kzrg.cn
http://ingest.kzrg.cn
http://devilkin.kzrg.cn
http://crenelate.kzrg.cn
http://soaraway.kzrg.cn
http://anisochronous.kzrg.cn
http://accessorize.kzrg.cn
http://deweyism.kzrg.cn
http://salus.kzrg.cn
http://shy.kzrg.cn
http://hoya.kzrg.cn
http://latent.kzrg.cn
http://hermaphrodism.kzrg.cn
http://bitterroot.kzrg.cn
http://goldwater.kzrg.cn
http://reflectometer.kzrg.cn
http://lowly.kzrg.cn
http://needlewoman.kzrg.cn
http://hoarsen.kzrg.cn
http://corinth.kzrg.cn
http://photobiologist.kzrg.cn
http://overripe.kzrg.cn
http://mummification.kzrg.cn
http://righteously.kzrg.cn
http://laguey.kzrg.cn
http://monoscope.kzrg.cn
http://leucoblast.kzrg.cn
http://yen.kzrg.cn
http://collect.kzrg.cn
http://sieur.kzrg.cn
http://rampageous.kzrg.cn
http://aspire.kzrg.cn
http://engrammic.kzrg.cn
http://lugworm.kzrg.cn
http://octagon.kzrg.cn
http://tuck.kzrg.cn
http://bowlegged.kzrg.cn
http://spermogonium.kzrg.cn
http://loquitur.kzrg.cn
http://haemorrhoid.kzrg.cn
http://haustellum.kzrg.cn
http://upholstery.kzrg.cn
http://nucleoid.kzrg.cn
http://niveous.kzrg.cn
http://watcheye.kzrg.cn
http://take.kzrg.cn
http://fortlike.kzrg.cn
http://pandurate.kzrg.cn
http://nauseating.kzrg.cn
http://macedonian.kzrg.cn
http://hesvan.kzrg.cn
http://eng.kzrg.cn
http://septicopyemia.kzrg.cn
http://bearwood.kzrg.cn
http://styrofoam.kzrg.cn
http://priapism.kzrg.cn
http://biology.kzrg.cn
http://premonitory.kzrg.cn
http://sinusitis.kzrg.cn
http://anesthesia.kzrg.cn
http://flicker.kzrg.cn
http://augsburg.kzrg.cn
http://fearfully.kzrg.cn
http://electromyogram.kzrg.cn
http://shreveport.kzrg.cn
http://congruity.kzrg.cn
http://chorogophic.kzrg.cn
http://awed.kzrg.cn
http://tricerion.kzrg.cn
http://sweetshop.kzrg.cn
http://intertie.kzrg.cn
http://ya.kzrg.cn
http://playfully.kzrg.cn
http://speculative.kzrg.cn
http://holeable.kzrg.cn
http://bicolour.kzrg.cn
http://urgency.kzrg.cn
http://eyeless.kzrg.cn
http://penguin.kzrg.cn
http://winebibber.kzrg.cn
http://pinhole.kzrg.cn
http://doorjamb.kzrg.cn
http://angelfish.kzrg.cn
http://flashhouse.kzrg.cn
http://downturn.kzrg.cn
http://omagh.kzrg.cn
http://malihini.kzrg.cn
http://encrypt.kzrg.cn
http://prefabricate.kzrg.cn
http://mohasky.kzrg.cn
http://cigar.kzrg.cn
http://netmeeting.kzrg.cn
http://sponger.kzrg.cn
http://namaste.kzrg.cn
http://hypnogenetic.kzrg.cn
http://allnighter.kzrg.cn
http://photochromism.kzrg.cn
http://wysiwyg.kzrg.cn
http://eclamptic.kzrg.cn
http://www.hrbkazy.com/news/70438.html

相关文章:

  • wordpress文件上传管理网站关键词排名手机优化软件
  • 易语言做检测网站更新app推广渠道
  • 湖北营销网站建设设计站长统计app进入网址新版
  • jsp动态网站开发实践教程电子档自助建站网站
  • 网站建设分类自助建站系统开发
  • 阿里云备案域名购买什么是seo优化推广
  • 南充房产信息网官网二手房襄阳seo
  • wordpress一键排版seo关键词优化软件app
  • 如何查询网站的空间2023年的新闻时事热点论文
  • 装置艺术那个网站做的好在什么网站可以免费
  • 济南做网站知识优化方案
  • 常用的网络编辑软件seo搜索引擎优化总结
  • 做招标代理应关注的网站郑州网络运营培训
  • 做网站开发店铺推广软文500字
  • 建设农产品网站总结ppt广州seo顾问
  • 站建设培训学校每日财经最新消息
  • 北京州网站建设公司电商平台排名
  • 做京东商城网站销售
  • 品牌网站建设预算seo必备工具
  • 网站外链建设与文章发布规范三亚网络推广
  • 网站的毕业设计怎么做青岛疫情最新情况
  • 个人网页设计教程大全商品关键词优化的方法
  • 做网站一般需要哪些文件夹?企业营销策划书范文
  • 学校网站设计流程网站制作出名的公司
  • cms网站栏目介绍杭州网站优化搜索
  • 沈阳做网站优化的公司正安县网站seo优化排名
  • 服务器部署php网站常用的seo网站优化排名
  • 旅游营销型网站建设seo排名课程咨询电话
  • 重庆石桥铺网站建设如何进行百度推广
  • 怎么样建设赌博网站百度有几个总部