UNPKG

sybase-devdiniz

Version:

A simple node.js wrapper around a java/jconnect app that provides easy access to Sybase Databases without having to install odbc or freetds.

105 lines (71 loc) 3.18 kB
```markdown # node-sybase (Fork de [rodhoward/node-sybase](https://github.com/rodhoward/node-sybase)) Este projeto é um fork do [rodhoward/node-sybase](https://github.com/rodhoward/node-sybase) que adiciona a possibilidade de passar propriedades de conexão extras diretamente ao Java Bridge. Assim, é possível configurar parâmetros adicionais (como `ENCRYPT_PASSWORD`, por exemplo) sem a necessidade de editar um arquivo de propriedades externo. Uma simples biblioteca wrapper para Node.js que utiliza uma aplicação Java para facilitar o acesso a bancos de dados Sybase via jconn3. O principal objetivo é permitir uma instalação mais simples, sem a necessidade de instalar e configurar ODBC ou FreeTDS. Contudo, é necessário ter o Java 1.5 (ou superior) instalado. --- ## Requisitos - Java 1.5 ou superior --- ## Instalação ### Via Git ```bash git clone git://github.com/rodhoward/node-sybase.git cd node-sybase node-gyp configure build ``` ### Via npm ```bash npm install sybase ``` --- ## Exemplo Rápido ### Uso Básico ```javascript var Sybase = require('sybase'), db = new Sybase('host', port, 'dbName', 'username', 'pw'); db.connect(function (err) { if (err) return console.log(err); db.query('select * from user where user_id = 42', function (err, data) { if (err) console.log(err); console.log(data); db.disconnect(); }); }); ``` ### Passando Propriedades de Conexão Adicionais Agora, propriedades extras podem ser passadas diretamente no construtor, por exemplo, para ativar a criptografia da senha: ```javascript var Sybase = require('sybase'), logTiming = true, javaJarPath = './JavaSybaseLink/dist/JavaSybaseLink.jar', // Propriedades adicionais são passadas como um objeto extra (ex: ENCRYPT_PASSWORD) db = new Sybase('host', port, 'dbName', 'username', 'pw', logTiming, javaJarPath, { ENCRYPT_PASSWORD: "true" }); db.connect(function (err) { if (err) return console.log(err); db.query('select * from user where user_id = 42', function (err, data) { if (err) console.log(err); console.log(data); db.disconnect(); }); }); ``` --- ## API A API é bem simples e utiliza callbacks padrão do Node.js, facilitando o uso com Promises. A assinatura completa do construtor é: ``` new Sybase(host: string, port: int, dbName: string, username: string, password: string, logTiming?: boolean, javaJarPath?: string, options?: SybaseOptions) ``` Onde a interface `SybaseOptions` inclui: ```javascript SybaseOptions { encoding: string, // padrão: "utf8" extraLogs: boolean // padrão: false } ``` > **Observação:** No fork, além das opções acima, é possível passar quaisquer outras propriedades que serão encaminhadas ao Java Bridge como pares `CHAVE=VALOR`. --- ## Considerações Finais - Este fork permite uma configuração mais flexível ao possibilitar o repasse de propriedades extras para a conexão Sybase. - As alterações no Java Bridge e no chamador Node.js foram feitas de forma a manter a compatibilidade com o funcionamento original, adicionando apenas novas funcionalidades. Sinta-se à vontade para contribuir e reportar quaisquer problemas! ```