标签: oracledb

如何将DataTable(或类似)与Oracle DB一起使用

我最近一直在处理一些性能问题,并试图找出如何以指数方式提高某些Oracle数据库调用的性能.

技术:

我熟悉DataTableDapper和SQL Server 的使用和表值参数,并希望使用上述技术复制它.我还没有能够重现下面的解决方案来使用Devart和OracleManaged:

下面的代码不是我正在运行的......这是一个释义的例子.我只需要与Oracle一起工作的东西来传递DataTable或在查询/插入中使用的对象数组.

SQL Server:

CREATE TYPE MyCustomerInfo AS TABLE
(
    Id BIGINT NOT NULL,
    --Name NVARCHAR(32) NOT NULL,
    --...
);
Run Code Online (Sandbox Code Playgroud)

C#for SQL Server:

const string getCustomersSql = @"
    SELECT
        c.Id,
        --c.Name
        --...
    FROM @myCustomers mc
    LEFT JOIN Customers c
        ON c.Id = mc.Id";

var myCustomers = new DataTable();
myCustomers.Columns.Add("Id", typeof(long));
//...

myCustomers.Rows.Add(1);
myCustomers.Rows.Add(2);

var customers = await sqlDbConnection.QueryAsync<Customer>(getCustomersSql, new { myCustomers = myCustomers.AsTableValuedParameter("MyCustomerInfo") }); …
Run Code Online (Sandbox Code Playgroud)

c# devart dapper oracledb .net-core-2.0

6
推荐指数
1
解决办法
508
查看次数

通过Oracledb驱动程序连接到具有Nodejs的远程Oracle DB

嘿,我真的想弄清楚如何连接到远程Oracle测试数据库,我没有Java经验.所以,如果我能得到你的帮助,我将永远感激不尽.

我有一个远程测试数据库,我正在尝试连接到,我有一个旧样式SID的jdbc连接.根据这个链接:https://github.com/oracle/node-oracledb/blob/master/doc/api.md#notjdbc,我应该创建一个tnsnames.ora文件来连接,就像这样:

tnsnames.ora中:

appDB =
 (DESCRIPTION =
   (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
   (CONNECT_DATA =
     (SID = ORCL)
   )
 )
Run Code Online (Sandbox Code Playgroud)

然后我应该在我的节点server.js文件中引用它,就像这样

server.js:

const oracledb = require('oracledb');
oracledb.getConnection(
  {
    user          : process.env.ORACLE_USER,
    password      : process.env.ORACLE_PASSWORD,
    connectString : "appDB"
  },
  function(err, connection)
  {
    if (err) {
      console.error(err.message);
      return;
    }
    connection.execute(
      "SELECT * " +
        "FROM BOS_course",
      function(err, result)
      {
        if (err) {
          console.error(err.message);
          doRelease(connection);
          return;
        }
        console.log(result.rows);
        doRelease(connection);
      });
  });

module.exports = {
    oracledb
}; …
Run Code Online (Sandbox Code Playgroud)

oracle tnsnames node.js oracledb

2
推荐指数
1
解决办法
8212
查看次数

标签 统计

oracledb ×2

.net-core-2.0 ×1

c# ×1

dapper ×1

devart ×1

node.js ×1

oracle ×1

tnsnames ×1