一般需要遍历的数据处理都用ADO
但建议你遍历之前,设置一下主键,估计速度会提高70%左右。
相关知识:ADO简介
一种程序对象,用于表示用户数据库中的数据结构和所包含的数据。在Microsoft Visual Basic编辑器中,可以使用ADO对象以及ADO的附加组件(称为Microsoft ADO Extensions for DLL and Security(ADOX))来创建或修改表和查询、检验数据库、或者访问外部数据源。还可在代码中使用ADO来 *** 作数据库中的数据。
NodeJS对mysql数据库的简单 *** 作
1
打开软件新建一个空的文件夹
2
然后引入mysql依赖 npm install mysql 1 完成后对应文件夹下会生成一个node_modules的文件夹,我们不需要去管它
3
编写mysqljs文件 // 导入mysql依赖constmysql=require("mysql")// 获取
这个要看业务场景而决定,主流的数据库都是可以选择的,一般业内使用mysql的多一些。
我们来看看node提供的数据库支持有支持如下Database:IBMDB2,MSSQLServer,PostgreSQL,MySQL,SQLite,Oracle
支持的NoSQL有MongoDB,Hive,Redis,CouchDB。
Nodejs是一个Javascript运行环境(runtime),发布于2009年5月,由RyanDahl开发,实质是对ChromeV8引擎进行了封装。Nodejs对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。
V8引擎执行Javascript的速度非常快,性能非常好。 Nodejs是一个基于ChromeJavaScript运行时建立的平台,用于方便地搭建响应速度快、易于扩展的网络应用。Nodejs使用事件驱动,非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。
首先是登陆腾讯云,登陆之后可以领取新手礼包,如图
进入云产品->数据库->CDB for MYSQL->立即选购,选购最低配的可用礼包抵扣使用一个月,购买完成
主页->右上角产品管理->使用中的数据库,这时我们会看见一个实例,首先我们进入管理页面对实例进行一些基本的设置
实例名可以随意更改,外网地址必须开启,否则我们就不能在自己的项目中和本地访问云数据库。进入账号管理页面修改自己的root密码,然后点击右上角的登录数据库
登陆完成之后如下图
这个和本地客户端 *** 作基本相同,我就不详细阐述了
二、使用一个demo来说明如何 *** 作云mysql数据库1在实例上上新建一个为nodejs的数据库,然后新建一个为employee的表,新建四个字段 name sex age email除了年龄为int其它的全部为varchar格式
2新建一个TimLiu的文件夹,打开cmd,cd TimLiu, 初始化项目npm init ,按照它的提示一步一步的 *** 作即可,安装mysql模块,npm insitall mysql, 这个模块的作用主要是连接mysql数据库。
3新建一个modeljs 文件,
var mysql = require(‘mysql’);var connection = mysqlcreateConnection({
host:'',
user:'root',
password:'123abc',
database:' nodejs',
port:6445
})
connectionconnect();
这里的host为我们在腾讯云上开通的外地址,端口号也是在外网地址里面,注意要把外网地址写分开,用户为默认的管理员用户,密码为我们在云平台上设置的密码,数据库为我们创建的nodejs数据库。
接下来我们对数据库进行增删改查 *** 作
/增加员工
/function addEmployee(){
var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(,,,)';
var employeeInsertSql_Params = ['Tim','男',22,'18818216454@163com']
connectionquery(employeeInsertSql,employeeInsertSql_Params,function(err,result){
if(err) consolelog('[INSERT ERR]-',errmessage);
consolelog(result);
}) }addEmployee()
}
/
更新员工
/
function insertEmployee(){
var employeeUpdateSql = "UPDATE employee SET name = WHERE age =";
var employeeUpdateSql_Params = ['Peter',22];
connectionquery(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){
if(err) consolelog('[UPDATE ERR]-',errmessage);
consolelog(result);
})}
insertEmployee();
/
查询员工
/ function getEmployee(){
var employeeGetSql = "SELECT FROM employee";
connectionquery(employeeGetSql,function(err,result){
if(err) consolelog('[SELECT ERR]-',errmessage);
consolelog(result);
})}
getEmployee();
/删除员工
/ function deleteEmployee(){
var employeeDeleteSql = "DELETE employee WHERE name = ";
var employeeDeleteSql_Params = 'Peter';
connectionquery(employeeDeleteSql,employeeDeleteSql_Params,function(err,result){
if(err) consolelog('[DELETE ERR]-',errmessage);
consolelog(result);
})
}deleteEmployee();
这样我们就可以愉快的 *** 作数据库了
如果大家想把项目更模块化 *** 作,可在model下面新建一个employee_twojs,代码如下
var mysql = require('mysql');var connection = mysqlcreateConnection({host:'',
user:'root',
password:'',
database:'nodejs',
port:})connectionconnect();/
增加员工
@param {String} employee
@param {Function} callback
/exportsaddEmployee=function(employee,callback){
var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(,,,)';
var employeeInsertSql_Params = [employeename,employeesex,employeeage,employeeemail]
connectionquery(employeeInsertSql,employeeInsertSql_Params,callback)}/
更新员工
@param {String} employee
@param {Function} callback
/exportsupdateEmployee = function(name,age){
var employeeUpdateSql = "UPDATE employee SET name = WHERE age =";
var employeeUpdateSql_Params = ['Peter',22];
connectionquery(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){
if(err) consolelog('[UPDATE ERR]-',errmessage);
consolelog(result);
})}/
查询员工
/exportsgetEmployee = function(){
var employeeGetSql = "SELECT FROM employee";
connectionquery(employeeGetSql,callback)}/
删除员工
@param {String} name
/exportsdeleteEmployee = function(name){
var employeeDeleteSql = "DELETE employee WHERE name = ";
var employeeDeleteSql_Params = 'Peter';
connectionquery(employeeDeleteSql,employeeDeleteSql_Params,callback)
}再在根目录下新建indexjs,代码如下var db = require('/model/employee_two');//增加员工var employee = {
name:'lisa',
age:22,
sex:"女",
email:'99533212@qqcom'}dbaddEmployee(employee,function(err,result){
if(err) consolelog("[INSERT err]-",errmessage)
consolelog(result);})//删除员工dbdeleteEmployee('Peter',function(err,result){
if(err) consolelog("[DELETE err]-",errmessage)
consolelog(result);})//更新员工dbupdateEmployee('Tim',23,function(err,result){
if(err) consolelog("[UPDATE err]-",errmessage)
consolelog(result);})//查询员工dbgetEmployee(function(err,result){
if(err) consolelog("[GET err]-",errmessage)
consolelog(result);})
产品开发了新版本,数据不兼容,新版本的数据结构比旧版本复杂一些,目前,旧版本是在线系统,需要将旧版本程序的数据适配至新版本程序。数据库是MySQL,这里选择使用NodeJS来完成。
使用的版本:
需要的依赖
案例一,单表的数据同步:
databasemysqlmysqltoolsjs
databasemysql2mysql2toolsjs
syncdata0basesyncDatajs
syncdata1manufactormainmanufactorjs
syncdata2brandmainbrandjs
syncdata3categorymaincategoryjs
案例二,关联表的数据同步:
databasemysql2mysql2promisetoolsjs
syncdata4general_namemaingeneral_namejs
syncdata5goodsmaingoodsjs
以上就是关于nodejs 遍历 mysql 100 万记录,怎么 *** 作比较好全部的内容,包括:nodejs 遍历 mysql 100 万记录,怎么 *** 作比较好、nodejs如何复制mysql数据库、node.js用什么数据库好等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)