繁体   English   中英

使用 MySQL 和 Javascript (node.js)

[英]Using MySQL with Javascript (node.js)

我刚刚开始学习 Node.js。 我来自 PHP 背景,所以我开始使用 MySQL。 所以,我想尝试使用 javaScript 执行一些基本的 MySQL 查询。我这样写查询:

filename: test.js

var mysql = require('mysql');
var con = mysql.createConnection({
  host: "localhost",
  user: "root",
  password: "",
  database: "test",
});
con.connect(err => {
  if (err) throw err;
  console.log("Connected!");
  const q = "INSERT INTO testing VALUES(3, 'MILLENNIAL', 19, 'STUDENT', 'CSE')";
  con.query(q, (err, result) => {
    if (err) throw err;
    console.log("done");
  });
});

当我以这种方式运行唯一的 javascript 文件时: node test.js查询被执行但是当我将同一个文件连接到一个 html 文件时,这样:

<script src="test.js"></script>

查询没有被执行......它在控制台中出现错误: Uncaught ReferenceError: require is not defined错误Uncaught ReferenceError: require is not defined

我觉得我没有在这里使用非常重要的东西。 我错过了什么吗?? 请帮助我走得更远。

如果这很愚蠢,我很抱歉,但是请帮助我。 先感谢您。

node.js 是 javascript 运行时,它使用 javascript 语法,用于服务器端语言。 您尝试的是在前端使用 nodejs 脚本。 require 未定义 - 因为它仅适用于节点,要在纯 javascript 中使用其他模块,您将需要使用 cdn 或诸如 browserify、webpack 之类的包。 如果您有兴趣,请查看文档。

我将尝试从 PHP 的角度进行解释。

当您编写 PHP 时,通常您生成的文件是 HTML 并且您将 PHP 代码嵌入其中,因此它在没有 PHP 的情况下呈现给请求浏览器。

在节点中,这是不同的。 我们不会编写嵌入节点代码的 HTML。 Node 更注重后端和前端的分离。 你写你的后端来回复你的前端。

后端是您键入var mysql = require('mysql');

您可以使用诸如 express 与 koa 之类的东西将结果查询提供给前端。

这是一个很好的入门教程https://geshan.com.np/blog/2020/11/nodejs-mysql-tutorial/我通常推荐 Koa 因为它现在更新更频繁,但 express 基本上是一样的!

希望这能引导您朝着正确的方向前进。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM