Cet article présente principalement la méthode de connexion de Nodejs à mysql et réalisant les opérations d'ajout, de suppression, de modification et d'interrogation. Il combine le formulaire d'exemple avec une analyse détaillée de la connexion de nodejs à la base de données mysql, la création de la base de données mysql et de nodejs. ajout, suppression, modification et interrogation pour MySQL. Pour obtenir des conseils d'implémentation spécifiques pour les opérations associées, les amis dans le besoin peuvent se référer à
Cet article décrit comment Nodejs se connecte à MySQL et implémente les opérations d'ajout, de suppression, de modification et de vérification. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
1 Préparation
Les didacticiels Nodejs utilisent principalement le fonctionnement de MongoDB comme exemple. . Cependant, mongodb présente certaines limitations, qui sont indiquées sur le site officiel. J'ai l'intention d'utiliser MySQL car j'ai encore une certaine expérience de son utilisation. Concentrez-vous d’abord sur la recherche. node-mysql est actuellement le pilote mysql le plus populaire sous node. Je l'ai utilisé au départ, car la méthode de rappel asynchrone comporte vraiment de nombreux pièges.
Le nom du package du projet suivant est mysql, et la version est mysql@ 2.5.4
Expliquez d'abord le code ci-dessous. Ils commencent tous par le code suivant et ne seront pas expliqués. plus tard
var connection = mysql.createConnection({ host : '127.0.0.1', user : 'root', password : 'root123', port: '3306', database: 'my_news_test', });
La signification du code est très simple. Si vous souhaitez approfondir, vous pouvez vous rendre sur le site officiel ci-dessus pour vérifier. Les configurations telles que l'hôte et l'utilisateur doivent être claires pour ceux qui ont écrit des applications de base de données MySQL. Veuillez modifier vous-même les paramètres correspondants. Le code suivant suppose qu'il existe une table appelée node_use dans la base de données "my_news_test". La table a 3 attributs
id : clé primaire auto-incrémentée
name : Le nom a des restrictions uniques
âge : âge
Test MySQL version MySQL : 5.5
2. Créez la base de données et insérez 5 éléments Enregistrez
Source Database : my_news_test SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for node_user -- ---------------------------- DROP TABLE IF EXISTS `node_user`; CREATE TABLE `node_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(30) DEFAULT NULL, `age` int(8) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of node_user -- ---------------------------- INSERT INTO `node_user` VALUES ('1', 'admin', '32'); INSERT INTO `node_user` VALUES ('2', 'dans88', '45'); INSERT INTO `node_user` VALUES ('3', '张三', '35'); INSERT INTO `node_user` VALUES ('4', 'ABCDEF', '88'); INSERT INTO `node_user` VALUES ('5', '李小二', '65');
3. Testez d'abord l'environnement
1. le package mysql de nodejs
D:\User\myappejs4>npm install mysql mysql@2.5.4 node_modules\mysql ├── require-all@0.0.8 ├── bignumber.js@1.4.1 └── readable-stream@1.1.13 (inherits@2.0.1, string_decoder@0.10.31, isarray@0 .0.1, core-util-is@1.0.1)
2. Écrivez le code pour l'interaction entre nodejs et mysql
//mysql.js //首先需要安装nodejs 的mysql包 //npm install mysql //编写nodejs与mysql交互的代码 var mysql = require('mysql'); var TEST_DATABASE = 'my_news_test'; var TEST_TABLE = 'node_user'; //创建连接 var client = mysql.createConnection({ user: 'root', password: 'root123', }); client.connect(); client.query("use " + TEST_DATABASE); client.query( 'SELECT * FROM '+TEST_TABLE, function selectCb(err, results, fields) { if (err) { throw err; } if(results) { for(var i = 0; i < results.length; i++) { console.log("%d\t%s\t%s", results[i].id, results[i].name, results[i].age); } } client.end(); } );
3. Exécution des résultats
D:\User\myappejs4>node mysqltest.js 1 admin 32 2 dans88 45 3 张三 35 4 ABCDEF 88 5 李小二 65
<. 🎜>
4. Node.js combiné avec les opérations d'ajout, de suppression, de modification et de requête de MySQL
1. > fonctionne comme suitvar mysql = require('mysql'); var connection = mysql.createConnection({ host : '127.0.0.1', user : 'root', password : 'root123', port: '3306', database: 'my_news_test', }); connection.connect(); var userAddSql = 'INSERT INTO node_user(id,name,age) VALUES(0,?,?)'; var userAddSql_Params = ['Wilson', 55]; //增 add connection.query(userAddSql,userAddSql_Params,function (err, result) { if(err){ console.log('[INSERT ERROR] - ',err.message); return; } console.log('-------INSERT----------'); //console.log('INSERT ID:',result.insertId); console.log('INSERT ID:',result); console.log('#######################'); }); connection.end();
D:\User\myappejs4>node mysqltestadd.js -------INSERT---------- INSERT ID: { fieldCount: 0, affectedRows: 1, insertId: 6, serverStatus: 2, warningCount: 0, message: '', protocol41: true, changedRows: 0 } #######################
var mysql = require('mysql'); var connection = mysql.createConnection({ host : '127.0.0.1', user : 'root', password : 'root123', port: '3306', database: 'my_news_test', }); connection.connect(); var userModSql = 'UPDATE node_user SET name = ?,age = ? WHERE id = ?'; var userModSql_Params = ['Hello World',99,7]; //改 up connection.query(userModSql,userModSql_Params,function (err, result) { if(err){ console.log('[UPDATE ERROR] - ',err.message); return; } console.log('----------UPDATE-------------'); console.log('UPDATE affectedRows',result.affectedRows); console.log('******************************'); }); connection.end();
D:\User\myappejs4>node mysqltest_up.js ----------UPDATE------------- UPDATE affectedRows 1 ******************************
var mysql = require('mysql'); var connection = mysql.createConnection({ host : '127.0.0.1', user : 'root', password : 'root123', port: '3306', database: 'my_news_test', }); connection.connect(); var userGetSql = 'SELECT * FROM node_user'; //查 query connection.query(userGetSql,function (err, result) { if(err){ console.log('[SELECT ERROR] - ',err.message); return; } console.log('---------------SELECT----------------'); console.log(result); console.log('$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$'); }); connection.end();
D:\User\myappejs4>node mysqltest_query.js ---------------SELECT---------------- [ { id: 1, name: 'admin', age: 32 }, { id: 2, name: 'dans88', age: 45 }, { id: 3, name: '张三', age: 35 }, { id: 4, name: 'ABCDEF', age: 88 }, { id: 5, name: '李小二', age: 65 }, { id: 6, name: 'Wilson', age: 55 } ] $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
Ce qui précède est ce que j'ai compilé pour tout le monde, j'espère que cela sera utile à tout le monde à l'avenir.
var mysql = require('mysql'); var connection = mysql.createConnection({ host : '127.0.0.1', user : 'root', password : 'root123', port: '3306', database: 'my_news_test', }); connection.connect(); var userDelSql = 'DELETE FROM node_user WHERE id = 7'; //ɾ connection.query(userDelSql,function (err, result) { if(err){ console.log('[DELETE ERROR] - ',err.message); return; } console.log('-------------DELETE--------------'); console.log('DELETE affectedRows',result.affectedRows); console.log('&&&&&&&&&&&&&&&&&'); }); connection.end(); 运行的结果如下 D:\User\myappejs4>node mysqltest_del.js -------------DELETE-------------- DELETE affectedRows 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!