您的位置:首页 > 健康 > 养生 > 平面设计学徒_软考网络规划设计师论文_网站seo培训_seo排名点击器

平面设计学徒_软考网络规划设计师论文_网站seo培训_seo排名点击器

2025/4/17 19:41:28 来源:https://blog.csdn.net/2302_79462679/article/details/147259823  浏览:    关键词:平面设计学徒_软考网络规划设计师论文_网站seo培训_seo排名点击器
平面设计学徒_软考网络规划设计师论文_网站seo培训_seo排名点击器
环境检查
  1. Node.js 环境验证

    node -v  # 确认版本 ≥14.x
    npm -v    # 确认能正常输出

  2. MySQL 服务检查

    
    # Linux
    systemctl status mysql# Windows (CMD)
    sc query MySQL


数据库与表创建
  1. 创建数据库

    
    CREATE DATABASE users CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    USE users;

  2. 关闭外键检查并建表

    SET FOREIGN_KEY_CHECKS = 0;CREATE TABLE t_users (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(100) NOT NULL,gender TINYINT(1),borndate DATE,address VARCHAR(255)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;-- 插入测试数据
    INSERT INTO t_users (name, gender, borndate, address) VALUES
    ('郭靖', 1, '2000-01-01', '襄阳'),
    ('黄蓉', 0, '2001-05-05', '桃花岛');SET FOREIGN_KEY_CHECKS = 1;


Node.js 连接数据库
  1. 项目初始化

    
    npm init -y
    npm install mysql2

  2. index.js 基础连接

    
    const mysql = require('mysql2');const connection = mysql.createConnection({host: 'localhost',user: 'root',password: 'your_password',database: 'users'
    });connection.connect((err) => {if (err) throw err;console.log('MySQL connected!');connection.end(); // 测试后关闭
    });


查询操作
  1. query.js 简单查询

    
    const connection = mysql.createConnection({ /* 配置同上 */ });connection.query('SELECT * FROM t_users', (err, results) => {if (err) throw err;console.log(results);connection.end();
    });

  2. 条件查询

    
    const sql = 'SELECT * FROM t_users WHERE name LIKE ? AND borndate < ?';
    const params = ['%郭%', '2003-12-31'];
    connection.query(sql, params, (err, results) => {// 处理结果
    });

  3. 获取字段信息

    
    connection.query('SELECT * FROM t_users WHERE id > ?', [5], (err, results, fields) => {console.log(fields.map(f => f.name)); // 输出字段名}
    );


新增操作 (insert.js)新增作 (insert.js)

const sql = `INSERT INTO t_users (name, gender, borndate, address) VALUES (?, ?, ?, ?)`;
const params = ['梅超风', 1, '2004-07-09', '古墓'];connection.query(sql, params, (err, result) => {console.log('Insert ID:', result.insertId);connection.end();
});

修改操作 (update.js)修改作 (update.js)

const sql = 'UPDATE t_users SET name=?, address=? WHERE id=?';
const params = ['张三丰', '武当山', 3];connection.query(sql, params, (err, result) => {console.log('Affected rows:', result.affectedRows);connection.end();
});

关键点总结

安全实践

  • 使用 ? 占位符防止 SQL 注入。
  • 参数数组顺序需与 SQL 中的占位符严格匹配。

  1. 连接管理

每次操作后调用 connection.end() 释放资源。

  1. 错误处理

回调函数中优先检查 err 对象。

  1. 数据类型

确保 JS 中的数据类型与 MySQL 字段匹配(如日期格式为 YYYY-MM-DD)。

  1. 调试技巧

打印 results 和 fields 理解返回数据结构。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com