nodejs连接oracle数据库
时间:2022-12-21 18:00:00
在Oracle下载所需驱动程序并在适当位置解压
https://www.oracle.com/database/technologies/instant-client/downloads.html
将TNS连接压缩包解压至/path/to/your/instantclient_21_6/network/admin/
目录结构大能是这样的
\---admin cwallet.sso ewallet.p12 ewallet.pem keystore.jks ojdbc.properties sqlnet.ora tnsnames.ora truststore.jks
const oracledb = require('oracledb') // 如果是Linux系统 libDir 改为 configDir oracledb.initOracleClient({
libDir: 'C:\\APPS\\instantclient_21_6'}) //oracledb.initOracleClient({configDir: '/home/instantclient_21_6'}) const query = function () {
return new Promise((resolve, reject) => {
oracledb.getConnection({
user: '用户名', password: '密码', connectString: `TNS连接串` }, (err, connection) => {
if (err) {
console.error(连接数据库失败, err) return } resolve(connection) }) }) } query().then((connection) => {
connection.execute('SELECT * FROM TESTAAA where rownum<=2', (err, result) => {
connection.close((err) => {
if (err) {
console.error(err)
}
})
// rows为数据,metadata为字段
for (let index in result['rows']) {
console.log((result['rows'][index]).toString().replace('\n',''))
}
})
})