[javascript] JavaScript를 MySQL과 연결할 수 있습니까?

JavaScript를 MySQL과 연결할 수 있습니까? 그렇다면 어떻게?



답변

아니요, JavaScript는 MySQL에 직접 연결할 수 없습니다. 그러나 JS와 PHP를 혼합하여 그렇게 할 수 있습니다.

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 Driver는 마치 JavaScript 코드에서 직접 호출하여 데이터를 읽고 쓸 수있는 커넥터입니다. 데이터 노드에 직접 액세스하기 때문에 MySQL 서버를 통과 할 때 추가 대기 시간이 없으며 JavaScript 코드 // 개체에서 SQL 작업으로 변환해야합니다. 어떤 이유로 MySQL 서버를 통과하는 것을 선호한다면 (예를 들어 InnoDB에 테이블을 저장하는 경우) 구성 할 수 있습니다.


답변

JavaScript를 사용하여 MySQL 데이터베이스에 연결하려는 경우 Node.js와 mysql 이라는 라이브러리를 사용할 수 있습니다 . 쿼리를 생성하고 레지스터 배열로 결과를 얻을 수 있습니다. 시도해보고 싶다면 내 프로젝트 생성기 를 사용하여 백엔드를 만들고 연결할 데이터베이스로 MySQL 을 선택할 수 있습니다. 그런 다음 새 REST API 또는 GraphQL 엔드 포인트를 전면에 노출 하고 MySQL 데이터베이스 작업을 시작하면됩니다.


NOSTALGIA가 남긴 오래된 답변

그때

질문을 이해하고 내가 틀렸다면 정정하기 때문에 클라이언트 측에서만 JavaScript를 사용하는 클래식 서버 모델을 참조합니다. 이 클래식 모델에서 LAMP 서버 (Linux, Apache, MySQL, PHP)에서 데이터베이스와 접촉하는 언어는 PHP 였으므로 데이터베이스에 데이터를 요청하려면 PHP 스크립트를 작성 하고 반환 데이터를 클라이언트에 에코 해야합니다. 기본적으로 물리적 기계에 따른 언어 분포는 다음과 같습니다.

  1. 서버 측 : PHP 및 MySQL.
  2. 클라이언트 측 : HTML / CSS 및 JavaScript.

이것은 다음과 같은 기능이있는 MVC 모델 (모델,보기, 컨트롤러)에 응답했습니다.

  1. 모델 : 모델은 데이터,이 경우 변수를 관리하거나 저장된 데이터에 액세스하는 PHP 스크립트 (이 경우 MySQL 데이터베이스)를 처리하고이를 JSON 데이터로 클라이언트에 보냅니다.
  2. 보기 : 보기는 우리가 보는 것이며 모델과 완전히 독립적이어야합니다. 모델에 포함 된 데이터 만 표시하면되지만 관련 데이터가 없어야합니다. 이 경우보기는 HTML 및 CSS를 사용합니다. 보기의 기본 구조를 만드는 HTML과이 기본 구조에 모양을 부여하는 CSS.
  3. 컨트롤러 : 컨트롤러는 모델과 뷰 사이의 인터페이스입니다. 이 경우 사용되는 언어는 JavaScript이며 모델이 JSON 패키지로 전송하는 데이터를 가져와 HTML 구조를 제공하는 컨테이너에 넣습니다. 컨트롤러가 모델과 상호 작용하는 방식은 AJAX 를 사용하는 것 입니다. GETPOST 메서드를 사용 하여 서버 측에서 PHP 스크립트를 호출하고 서버에서 반환 된 데이터를 포착합니다.

컨트롤러의 경우 HTML 구조 (DOM)를 제어하기위한 “저수준”라이브러리 인 jQuery 와 같은 흥미로운 도구가 있으며 , 그 다음에 는 서로 다른 연결 관찰자를 생성 할 수있는 Knockout.js 와 같은 새롭고 고급 수준의 도구가 있습니다. 이벤트가 발생할 때 DOM 요소를 업데이트합니다. 비슷한 방식으로 작동하지만 완전한 환경 인 것처럼 보이는 Google의 Angular.js 도 있습니다. 그중 하나를 선택하는 데 도움이되도록 Knockout 대 Angular.jsKnockout.js 대 Angular.js 두 도구에 대한 두 가지 훌륭한 분석이 있습니다. 나는 아직도 읽고있다. 그들이 당신을 돕길 바랍니다.

지금

Node.js를 기반으로하는 최신 서버에서는 모든 것에 JavaScript를 사용합니다. Node.js는 Google V8, Chrome JavaScript 엔진에서 작동하는 많은 라이브러리가있는 JavaScript 환경입니다. 이러한 새 서버를 사용하는 방법은 다음과 같습니다.

  1. Node.jsExpress : 서버가 구축되는 메인 프레임. 몇 줄의 코드로 서버를 만들거나 Express와 같은 라이브러리를 사용하여 서버를 더 쉽게 만들 수 있습니다. Node.js 및 Express를 사용하면 클라이언트에서 서버에 대한 청원을 관리하고 적절한 페이지로 응답 할 것입니다.
  2. Jade : 페이지를 만들기 위해 우리는 HTML을 작성하는 동안 웹 페이지를 작성할 수있는 템플릿 언어 (이 경우 Jade)를 사용합니다 (약간의 시간이 걸리지 만 배우기 쉽습니다). 그런 다음 클라이언트의 청원에 응답하는 서버 코드에서 Jade 코드를 “실제”HTML 코드로 렌더링하면됩니다.
  3. 스타일러스 : Jade와 비슷하지만 CSS 용입니다. 이 경우 미들웨어 기능을 사용하여 스타일러스 파일을 페이지의 실제 CSS 파일로 변환합니다.

그리고 우리는 우리가 사용하여 설치할 수있는 패키지를 많이 가지고 NPM (Node.js를 패키지 관리자를) 그냥 Node.js를 배우고 싶은 당신의 사람들을 위해 (그것을 필요로하는 우리의 Node.js를 서버에 직접 사용을,이 시도 초보자 튜토리얼 개요). 그리고 이러한 패키지 중 일부는 데이터베이스에 액세스 할 수 있습니다. 이를 사용하면 서버 측에서 JavaScript를 사용하여 My SQL 데이터베이스에 액세스 할 수 있습니다.

그러나 Node.js로 작업하려는 경우 할 수있는 최선의 방법은 JSON 파일을 기반으로하는 MongoDB 와 같은 새로운 NoSQL 데이터베이스를 사용하는 것 입니다. MySQL과 같은 테이블을 저장하는 대신 JSON 구조로 데이터를 저장하므로 가장 큰 테이블 크기에 대한 거대한 테이블을 만드는 대신 긴 숫자 벡터와 같이 각 구조 내에 다른 데이터를 넣을 수 있습니다.

이 간단한 설명이 도움이 되었기를 바랍니다. 이에 대해 자세히 알아 보려면 여기에 사용할 수있는 몇 가지 리소스가 있습니다.

  • Egghead :이 사이트는 JavaScript와 그 환경에 대한 훌륭한 짧은 튜토리얼로 가득합니다. 시도해 볼 가치가 있습니다. 그리고 때때로 할인을하십시오.
  • Code School : 클라이언트 측을 테스트하는 데 도움이되는 Chrome 개발자 도구에 대한 매우 흥미로운 무료 과정입니다.
  • Codecademy : HTML, CSS, JavaScript, jQuery 및 PHP에 대한 무료 교육 과정을 통해 온라인 예제를 따라갈 수 있습니다.
  • 10gen 교육 : MongoDB에 대해 알아야 할 모든 것을 다른 언어에 대한 자습서로 제공합니다.
  • W3Schools : 여기에는이 모든 것에 대한 튜토리얼이 있으며 정말 유용한 숏 코드 예제가 많기 때문에 참조 장소로 사용할 수 있습니다.
  • Udacity : 웹 개발에 대한 몇 가지 흥미로운 주제와 내가 선호하는 JavaScript를 사용한 3D 그래픽을위한 놀라운 WebGL 과정과 함께 다양한 주제에 대한 무료 비디오 코스가있는 곳입니다.

시작하는 데 도움이 되었기를 바랍니다.

즐기세요!


답변

방정식에 PHP와 같은 것을 추가해야한다고 생각합니다. PHP는 데이터베이스와 상호 작용 한 다음 Javascript로 AJAX 호출을 할 수 있습니다.


답변

조금 늦었지만 최근에 MySql 5.7이 http 플러그인을 통해 사용자가 mysql에 직접 연결할 수 있음을 발견했습니다.

mysql 5.7 용 Http 클라이언트 찾기


답변

간단한 대답은 아니오입니다.

JavaScript는 브라우저에서 실행되는 클라이언트 측 언어 ( node.js 에도 불구하고)이고 MySQL은 서버에서 실행되는 서버 측 기술입니다.

즉, 일반적으로 ASP.NET 또는 PHP와 같은 서버 측 언어를 사용하여 데이터베이스에 연결합니다.


답변

예? 유성을보세요. 연결:

http://meteor.com/screencasthttp://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});