JavaScript 可以连接 MySQL 吗?如果是这样,如何?
JavaScript 可以连接 MySQL 吗?
如果没有某种桥接器,客户端 JavaScript 就无法访问 MySQL。但是上面关于 JavaScript 只是一种客户端语言的大胆声明是不正确的——JavaScript 可以在客户端和服务器端运行,就像 Node.js 一样。
Node.js 可以通过类似https://github.com/sidorares/node-mysql2 的方式访问 MySQL
你也可以使用 Socket.IO 开发一些东西
你的意思是问客户端JS应用程序是否可以访问MySQL?我不确定这样的库是否存在,但它们是可能的。
编辑:自写作以来,我们现在有了MySQL 集群:
Node.js 的 MySQL 集群 JavaScript 驱动程序就像它听起来的那样——它是一个连接器,可以直接从你的 JavaScript 代码中调用来读取和写入你的数据。由于它直接访问数据节点,因此通过 MySQL 服务器没有额外的延迟,并且需要从 JavaScript 代码//对象转换为 SQL 操作。如果出于某种原因,您希望它通过 MySQL 服务器(例如,如果您将表存储在 InnoDB 中),则可以对其进行配置。
如果要使用 JavaScript 连接到 MySQL 数据库,可以使用 Node.js 和名为mysql的库。您可以创建查询,并以寄存器数组的形式获取结果。如果你想尝试,你可以使用我的项目生成器创建一个后端并选择MySQL作为连接的数据库。然后,只需将您的新REST API或GraphQL端点公开到您的前端并开始使用您的 MySQL 数据库。
怀旧留下的旧答案
然后
根据我对问题的理解并纠正我,如果我错了,它指的是仅在客户端使用 JavaScript 的经典服务器模型。在这款经典机型,与LAMP服务器(Linux操作系统,Apache,MySQL和PHP)与数据库中的联系人的语言是PHP,所以请求数据,你需要编写PHP脚本和数据库呼应的将数据返回到客户端。基本上,根据物理机器的语言分布是:
- 服务器端: PHP 和 MySQL。
- 客户端: HTML/CSS 和 JavaScript。
这回答了我们具有以下功能的 MVC 模型(模型、视图、控制器):
- 模型:模型处理数据,在这种情况下,是管理变量或访问存储的数据的 PHP 脚本,在这种情况下,在我们的 MySQL 数据库中,并将其作为 JSON 数据发送到客户端。
- VIEW:视图就是我们所看到的,它应该完全独立于模型。它只需要显示模型中包含的数据,但不应包含相关数据。在这种情况下,视图使用 HTML 和 CSS。HTML 创建视图的基本结构,CSS 为这个基本结构赋予形状。
- 控制器:控制器是我们的模型和视图之间的接口。在这种情况下,使用的语言是 JavaScript,它将模型作为 JSON 包发送给我们的数据放入提供 HTML 结构的容器中。控制器与模型交互的方式是使用AJAX。我们使用GET和POST方法在服务器端调用 PHP 脚本并捕获从服务器返回的数据。
对于控制器,我们有非常有趣的工具,如jQuery,作为控制 HTML 结构 (DOM) 的“低级”库,然后是新的、更高级的工具,如Knockout.js,允许我们创建连接不同的观察者DOM 元素在事件发生时更新它们。Google 的Angular.js也以类似的方式工作,但似乎是一个完整的环境。为了帮助您在其中进行选择,这里有两个对这两个工具的出色分析:Knockout 与 Angular.js和Knockout.js 与 Angular.js。我还在读书。希望他们能帮助你。
现在
在基于 Node.js 的现代服务器中,我们对一切都使用 JavaScript。Node.js 是一个 JavaScript 环境,其中包含许多与 Google V8、Chrome JavaScript 引擎配合使用的库。我们使用这些新服务器的方式是:
- Node.js和Express:构建服务器的大型机。我们可以用几行代码创建一个服务器,甚至可以使用像 Express 这样的库来更容易地创建服务器。使用 Node.js 和 Express,我们将管理从客户端到服务器的请求,并用适当的页面回答它们。
- Jade:为了创建页面,我们使用模板语言,在这种情况下,Jade,它允许我们像编写 HTML 一样编写网页,但有所不同(这需要一点时间,但很容易学习)。然后,在响应客户端请求的服务器代码中,我们只需要将 Jade 代码渲染成“真正的”HTML 代码。
- 手写笔:类似于 Jade,但用于 CSS。在这种情况下,我们使用中间件函数将手写笔文件转换为我们页面的真实 CSS 文件。
然后我们有很多包,我们可以使用NPM(Node.js 包管理器)安装并直接在我们的 Node.js 服务器中使用它们,只需要它(对于那些想要学习 Node.js 的人,试试这个初学者教程概述)。在这些包中,您有一些可以访问数据库。使用它,您可以在服务器端使用 JavaScript 来访问我的 SQL 数据库。
但是,如果您打算使用 Node.js,您可以做的最好的事情是使用基于 JSON 文件的新 NoSQL 数据库,例如MongoDB。它不像 MySQL 那样存储表,而是将数据存储在 JSON 结构中,因此您可以将不同的数据放入每个结构中,例如长数值向量,而不是为最大的大小创建巨大的表。
我希望这个简短的解释对您有用,如果您想了解更多信息,这里有一些您可以使用的资源:
- Egghead:这个站点充满了关于 JavaScript 及其环境的简短教程。值得一试。并且不时打折。
- 代码学校:提供关于 Chrome 开发者工具的免费且非常有趣的课程,可帮助您测试客户端。
- Codecademy:提供有关 HTML、CSS、JavaScript、jQuery 和 PHP 的免费课程,您可以通过在线示例进行学习。
- 10gen 教育:在不同语言的教程中包含您需要了解的有关 MongoDB 的所有信息。
- W3Schools:这个有关于所有这些的教程,您可以将其用作参考位置,因为它有很多非常有用的短代码示例。
- Udacity:一个提供关于不同主题的免费视频课程的地方,其中有一些关于 Web 开发的有趣课程和我最喜欢的,一个很棒的 WebGL 课程,用于使用 JavaScript 进行 3D 图形。
我希望它可以帮助你开始。
玩得开心!
不,JavaScript 不能直接连接到 MySQL。但是您可以将 JS 与 PHP 混合使用。
JavaScript 是一种客户端语言,您的 MySQL 数据库将在服务器上运行
有点晚了,但最近我发现 MySql 5.7 获得了 http 插件,用户现在可以直接连接到 mysql。
为 mysql 5.7 寻找 Http 客户端
我认为您需要在等式中添加诸如 PHP 之类的东西。PHP 与数据库交互,然后您可以使用 Javascript 进行 AJAX 调用。