none
SQLite com node.js RRS feed

Respostas

  • Funciona sim Julio. Não há nenhum requisito incompatível do sqlite3 para não funcionar no Azure como Web APP ou Cloud Service. Acabei de testar e funcionou perfeitamente. Basta instala-lo com NPM normalmente. Não esqueça que se for efetuar deploy como Web APP (websites) você não pode incluir o npm_modules. Apenas atualize o packages.json para incluir o sqlite3 como dependência e o Azure fará a instalação automática dos pacotes.

    Segue um código bem porco. Fiz deploy como web site.

    var http = require('http');
    var port = process.env.port || 1337;
    http.createServer(function (req, res) {
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.write("Starting SQL Lite\n");
        
        var sqlite3 = require('sqlite3').verbose();
        var db = new sqlite3.Database(':memory:');
        var string = "";
        
        db.serialize(function () {
            res.write("Creating table...\n");
            db.run("CREATE TABLE lorem (info TEXT)");
            
            res.write("Inserting values...\n");
            var stmt = db.prepare("INSERT INTO lorem VALUES (?)");
            for (var i = 0; i < 10; i++) {
                stmt.run("Ipsum " + i);
            }
            stmt.finalize();
            
            res.write("Querying rows...\n");
            db.each("SELECT rowid AS id, info FROM lorem", function (err, row) {
                res.write(row.id + ": " + row.info + "\n");
            });
            
        });
        
        db.close(function () {
            res.end("SQL Lite Closed");
        });
    }).listen(port);




    sábado, 23 de maio de 2015 00:28

Todas as Respostas

  • Julio,

    Sim, é possível.

    O procedimento não é trivial, segue um artigo interessante para ajudar você a utilizar o NodeJS no Azure.

    https://ntotten.com/2011/08/24/nodejs-on-windows-azure/

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    quinta-feira, 21 de maio de 2015 13:21
  • Olá Durval

    A questão é um pouco mais complexa a aplicação node.js eu consigo executar tranquilamente, até tem a opção de criar uma aplicação node no vs... em fim, mas o grande problema é usar o sqlite, será que é possível?

    Obrigado

    abraço

    sexta-feira, 22 de maio de 2015 10:38
  • Funciona sim Julio. Não há nenhum requisito incompatível do sqlite3 para não funcionar no Azure como Web APP ou Cloud Service. Acabei de testar e funcionou perfeitamente. Basta instala-lo com NPM normalmente. Não esqueça que se for efetuar deploy como Web APP (websites) você não pode incluir o npm_modules. Apenas atualize o packages.json para incluir o sqlite3 como dependência e o Azure fará a instalação automática dos pacotes.

    Segue um código bem porco. Fiz deploy como web site.

    var http = require('http');
    var port = process.env.port || 1337;
    http.createServer(function (req, res) {
        res.writeHead(200, { 'Content-Type': 'text/plain' });
        res.write("Starting SQL Lite\n");
        
        var sqlite3 = require('sqlite3').verbose();
        var db = new sqlite3.Database(':memory:');
        var string = "";
        
        db.serialize(function () {
            res.write("Creating table...\n");
            db.run("CREATE TABLE lorem (info TEXT)");
            
            res.write("Inserting values...\n");
            var stmt = db.prepare("INSERT INTO lorem VALUES (?)");
            for (var i = 0; i < 10; i++) {
                stmt.run("Ipsum " + i);
            }
            stmt.finalize();
            
            res.write("Querying rows...\n");
            db.each("SELECT rowid AS id, info FROM lorem", function (err, row) {
                res.write(row.id + ": " + row.info + "\n");
            });
            
        });
        
        db.close(function () {
            res.end("SQL Lite Closed");
        });
    }).listen(port);




    sábado, 23 de maio de 2015 00:28