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 Cluster JavaScript驱动程序就像它听起来一样 - 它是一个可以直接从您的JavaScript代码调用来读取和写入数据的连接器.当它直接访问数据节点时,通过MySQL服务器没有额外的延迟,需要将JavaScript代码//对象转换为SQL操作.如果由于某种原因,您更喜欢它通过MySQL服务器(例如,如果您在InnoDB中存储表),那么可以配置它.
JSDB为DB提供了一个JS接口.
一个策划组DB包从sindresorhus对Node.js的.
然后
正如我理解这个问题并纠正我,如果我错了,它指的是仅在客户端使用JavaScript的经典服务器模型.在这款经典机型,与LAMP服务器(Linux操作系统,Apache,MySQL和PHP)与数据库中的联系人的语言是PHP,所以请求数据到数据库中,你需要编写PHP脚本和回声返回数据到客户端.基本上,根据物理机器的语言分布是:
服务器端: PHP和MySQL.
客户端: HTML/CSS和JavaScript.
这响应MVC模型(模型,视图,控制器),我们具有以下功能:
模型:该模型处理数据,在这种情况下,是管理变量或访问存储数据的PHP脚本,在本例中是在我们的MySQL数据库中,并将其作为JSON数据发送到客户端.
视图:视图是我们看到的,它应该完全独立于模型.它只需要显示模型中包含的数据,但它不应该包含相关数据.在这种情况下,视图使用HTML和CSS.HTML创建视图的基本结构,而CSS则赋予这个基本结构的形状.
控制器:控制器是我们的模型和视图之间的接口.在这种情况下,使用的语言是JavaScript,它将模型发送给我们的数据作为JSON包,并将其放在提供HTML结构的容器中.控制器与模型交互的方式是使用AJAX.我们使用GET和POST方法在服务器端调用PHP脚本并从服务器捕获返回的数据.
对于控制器,我们有非常有趣的工具,如jQuery,作为控制HTML结构(DOM)的"低级"库,然后是新的,更高级的工具,如Knockout.js,允许我们创建连接不同DOM元素的观察者发生事件时更新它们.谷歌的Angular.js也以类似的方式运作,但似乎是一个完整的环境.为了帮助您选择,这里有两个很好的分析这两个工具:Knockout与Angular.js和Knockout.js与Angular.js.我还在读书.希望他们帮助你.
现在
在基于Node.js的现代服务器中,我们使用JavaScript来处理所有事情.Node.js是一个JavaScript环境,其中包含许多可与Google V8 Chrome JavaScript引擎配合使用的库.我们使用这种新服务器的方式是:
Node.js和Express:构建服务器的主框架.我们可以使用几行代码创建一个服务器,甚至可以使用Express作为Express来更容易地创建服务器.使用Node.js和Express,我们将从客户端管理对服务器的请求,并使用适当的页面回答它们.
Jade:为了创建页面,我们使用模板语言,在这种情况下,Jade,允许我们在编写HTML时编写网页但有差异(需要一点时间但很容易学习).然后,在服务器的代码中回答客户请求,我们只需要将Jade代码渲染成"真正的"HTML代码.
手写笔:类似于Jade但是对于css.在这种情况下,我们使用中间件函数将手写笔文件转换为我们页面的真实css文件.
然后我们可以使用NPM(Node.js包管理器)安装很多软件包,并直接在我们的Node.js服务器中使用它们(对于那些想要学习Node.js的人来说,试试这个初学者教程)概述).在这些包中,您可以使用其中一些来访问数据库.使用此方法,您可以在服务器端使用JavaScript来访问My SQL数据库.
但是,如果要使用Node.js,最好的办法就是使用基于JSON文件的新的NoSQL数据库,如MongoDB.它不是存储像MySQL这样的表,而是将数据存储在JSON结构中,因此您可以在每个结构中放置不同的数据,如长数字向量,而不是为最大的数据创建大表.
我希望这个简短的解释对您有用,如果您想了解更多相关信息,请在此处获得一些资源:
Egghead:这个网站上有很多关于JavaScript及其环境的简短教程.值得一试.并且不时制作折扣.
Code School:提供免费且非常有趣的Chrome开发者工具课程,帮助您测试客户端.
Codecademy:有关HTML,CSS,JavaScript,jQuery和PHP的免费课程,您可以使用在线示例.
10gen教育:在不同语言的教程中,您需要了解有关MongoDB的所有信息.
W3Schools:这个有关于所有这些的教程,您可以将它用作参考地点,因为它有很多简短的代码示例非常有用.
Udacity:一个关于不同主题的免费视频课程的地方,其中有一些关于Web开发的有趣内容,以及我喜欢的一个用于使用JavaScript的3D图形的惊人WebGL课程.
UPDATE!
现在,拥有一个Node服务器,如果你想与MySQL数据库通信,你可以使用一个名为mysql的库.你可以像使用PHP一样创建查询,你可以使用我创建的API生成器来尝试它,你可以使用NPM下载.它有一个向导,允许您选择要使用的数据库,以及其他内容.
我希望它可以帮助你开始.
玩得开心!
不,JavaScript无法直接连接到MySQL.但是你可以将JS与PHP混合使用.
JavaScript是一种客户端语言,您的MySQL数据库将在服务器上运行
我想你需要在等式中添加类似PHP的东西.PHP与数据库交互,然后您可以使用Javascript进行AJAX调用.
有点迟,但最近我发现MySql 5.7得到了http插件,用户现在可以直接连接到mysql.
为mysql 5.7寻找Http Client
简单的答案是:不.
JavaScript是一种在浏览器中运行的客户端语言(尽管是node.js),而MySQL是在服务器上运行的服务器端技术.
这意味着您通常使用服务器端语言(如ASP.NET或PHP)连接到数据库.
是?看看流星.链接:
http://meteor.com/screencast和http://net.tutsplus.com/tutorials/javascript-ajax/whats-this-meteor-thing/
我不明白它是如何完成的.但是Nettuts +把这个东西放在了javascript-ajax部分,也许是魔法发生了.
它还显示了使用JS连接和插入MongoDB的一些方法,如下所示:
Products.insert({Name : "Hammer", Price : 4.50, InStock : true}); Products.insert({Name : "Wrench", Price : 2.70, InStock : true}); Products.insert({Name : "Screw Driver", Price : 3.00, InStock : false}); Products.insert({Name : "Drill", Price : 5.25, InStock : true});