0

삼성 A5가 설치된 Windows 8.1에서 Appcelerator Studio를 사용하여 며칠을 보냈습니다. 이제 mysql 노드 모듈을 사용하고 싶습니다. 나는 그물에서 mysql 사본의 dir을 나의 Resources dir 밑으로 복사했다. Appcelerator에서 MySQL nodejs 모듈을 올바르게 사용하는 방법은 무엇입니까?

var mysql = require('mysql'); 
    var connection = mysql.createConnection({ 
     host: 'domain', 
     user: 'user', 
     password: 'password', 
     database: 'database' 
    }); 

    connection.connect(function (err) { 
     if (err) { 
      alert("Error on mysql connect: " + err.stack); 
      return; 
     } 
    }); 

    alert("Mysql connect is correct."); 

    connection.end(); 

이 프로젝트는 삼성에 설치하지만 시작에 오류가 발생한다

: MySQL의 모듈이 발견되지 그래서, 내 폴더처럼 보이는 : 내 app.js 여기

Projectname 
+-- Resources 
    +-- android 
    +-- mysql 
    | +-- lib 
    | | +--- ... 
    | +-- node_modules 
    | | +--- ... 
    | \- index.js 
    \- app.js 

을 그리고있다 .

무엇이 잘못 되었나요? 제발, 도와주세요!

영어로 된 도움과 죄송합니다.

+0

에 mysql에 대한 "일반"답변이 추가되었지만 mysql 노드 모듈이 작동하는 방법을 추가 할 수도 있습니다. –

답변

2

티타늄의 iOS/Android에는 MySQL과 같은 것이 없습니다. 거기에있는 데이터베이스는 SQLite입니다. documentation of Appcelerator에서 SQLite에 대해 읽을 수 있습니다.

또한 모듈이 아니지만 good old API입니다. 당신이 mysql라는 이름의 모듈이있는 경우 예

var db = Ti.Database.open('TiBountyHunter'); 
db.execute('CREATE TABLE IF NOT EXISTS fugitives(id INTEGER PRIMARY KEY, name TEXT, captured INTEGER, url TEXT, capturedLat REAL, capturedLong REAL);'); 
db.close(); 

(워드 프로세서에서) 당신은 일을 얻기 위해 lib 폴더에 넣어해야합니다. 그러나 노드 종속성이 있으면이 작업이 어려울 수 있습니다. 그런 다음 Titaniumifier

+0

** 답변에 감사드립니다. ** "mysql"은 합법적입니다 노드 모듈 모듈. 다음은 URL입니다 : [link] (https://www.npmjs.com/package/mysql) mysql 디렉토리에는 index.js, 'lib'및 'node_modules'디렉토리가 있습니다. mysql 디렉토리를 Resources/lib 디렉토리에 복사했지만 작동하지 않습니다. – Johnny

+0

Titaniumfier를 살펴 보았습니까? 티타늄에는 노드가 없습니다. 당신의 mysql 모듈은 어떤 의존성도 사용한다. –

+0

그래서 티타늄을 사용하지 않습니다. Appcelerator Studio를 사용하고 있는데이 노드는 내 nodej를 인식하고 도움말/기본 설정에서 구성 할 수 있습니다. 그리고 네, Titaniumfier를 보았지만 안드로이드 앱에서 MySQL 데이터베이스에 연결하는 방법을 모르겠습니다. – Johnny