Skip to content
DataMiner DoJo

More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search in posts
Search in pages
Search in posts
Search in pages
Log in
Menu
  • Blog
  • Questions
  • Learning
    • E-learning Courses
    • Open Classroom Training
    • Certification
      • DataMiner Fundamentals
      • DataMiner Configurator
      • DataMiner Automation
      • Scripts & Connectors Developer: HTTP Basics
      • Scripts & Connectors Developer: SNMP Basics
      • Visual Overview – Level 1
      • Verify a certificate
    • Tutorials
    • Video Library
    • Books We Like
    • >> Go to DataMiner Docs
  • Expert Center
    • Solutions & Use Cases
      • Solutions
      • Use Case Library
    • Markets & Industries
      • Media production
      • Government & defense
      • Content distribution
      • Service providers
      • Partners
      • OSS/BSS
    • DataMiner Insights
      • Security
      • Integration Studio
      • System Architecture
      • DataMiner Releases & Updates
      • DataMiner Apps
    • Agile
      • Agile Webspace
      • Everything Agile
        • The Agile Manifesto
        • Best Practices
        • Retro Recipes
      • Methodologies
        • The Scrum Framework
        • Kanban
        • Extreme Programming
      • Roles
        • The Product Owner
        • The Agile Coach
        • The Quality & UX Coach (QX)
    • DataMiner DevOps Professional Program
  • Downloads
  • More
    • Feature Suggestions
    • Climb the leaderboard!
    • Swag Shop
    • Contact
      • General Inquiries
      • DataMiner DevOps Support
      • Commercial Requests
    • Global Feedback Survey
  • PARTNERS
    • All Partners
    • Technology Partners
    • Strategic Partner Program
    • Deal Registration
  • >> Go to dataminer.services

SLSql.Query() method cursor type support

Solved1.40K views18th July 2023database db oracle slsql SQL
1
Tiago Almeida25 26th October 2021 0 Comments

Hi,

Cutting right to the chase: In some elements and automation scripts we created and maintain ourselves we have the need to query some data from external databases (topology, offload, etc.). To achieve this we have been using the methods provided by Skyline’s SLDatabase.dll library. This works fine for the usual select queries we need to execute from such classes.

However we are, right now, faced with a strange situation that we’d need some feedback from the developer(s) of this library or someone else who could provide such feedback. Here is the situation:

A colleague of ours has developed an oracle SQL function that returns a cursor type. One way to execute such a function is to do a select query that looks like this: select function_name (input param 1, input param 2, …) from dual;

When we try this in oracle sql developer we see that the function executes fine and returns a valid result of the type cursor.

However if we try to execute this select query using the SLSql.Query method provided by SLDatabase it seems like we never receive a result back. This method works well when doing a "normal" select query from a regular table so my current suspicion is that this method might not support the cursor type. Either that or maybe a different method has to be used in this case.

Is it possible to get some feedback on this? Is there a way we can execute this query and retrieve the resulting cursor?

Here is a screenshot of the result in oracle sql developer.

Marieke Goethals [SLC] [DevOps Catalyst] Selected answer as best 18th July 2023

2 Answers

  • Active
  • Voted
  • Newest
  • Oldest
0
Thomas Deweer [SLC]286 Posted 16th November 2021 0 Comments

Hello Tiago,

I don't think this kind of query is supported by our SLDatabase.DLL. I can only suggest to use the oracle driver. In SLDatabase.dll we use the oracle.ManagedDataAccess.dll which is already present in the Skyline Dataminer Files.

The main goal of SLDatabase is to allow DataMiner to execute the queries it has to do on local/central databases. This query is not one of them, so we don't have any tests/support on this type of query.

Kind regards,

Marieke Goethals [SLC] [DevOps Catalyst] Selected answer as best 18th July 2023
0
Brent Alleweireldt [SLC]1.53K Posted 26th October 2021 1 Comment

Hey Tiago,

This should be possible by using the following features.

  • Use the SLOracle class in SLDatabase if you are connecting to an oracle database.
  • Execute the query using the ScalarQuery() method (either directly on SLOracle, or by wrapping it in a OraclePreparedStatement).

The result of this should be an object, which can then be cast to Oracles OracleRefCursor for further usage.

Kind regards,

Tiago Almeida Posted new comment 27th October 2021
Tiago Almeida commented 27th October 2021

Hey Brent,

Thanks but I’m still having a hard time making this work.

The methods I’m using are:

SLOracle offloadDbConnectionManager = new SLOracle(offloadDbConnectionString);
Object res = offloadDbConnectionManager.ScalarQuery(ingressQuery, 900000);
OracleRefCursor cursor = (OracleRefCursor)res;
OracleDataReader oReader = cursor.GetDataReader();
offloadDbConnectionManager.Close();

However the scalarquery never method does not seem to return any value and so the Object res variable is never populated. What is wrong?

I can provide a test setup if needed.

Thanks.

Please login to be able to comment or post an answer.

My DevOps rank

DevOps Members get more insights on their profile page.

My user earnings

0 Dojo credits

Spend your credits in our swag shop.

0 Reputation points

Boost your reputation, climb the leaderboard.

Promo banner DataMiner DevOps Professiona Program
DataMiner Integration Studio (DIS)
Empower Katas

Recent questions

Web Applications exception in Cube due to invalid certificate 0 Answers | 0 Votes
Redundancy Groups and Alarming – Duplicate Alarms 0 Answers | 0 Votes
Correlation Engine: “Test rule” doesn’t result in a hit, despite functional rule 1 Answer | 3 Votes

Question Tags

adl2099 (115) alarm (62) Alarm Console (82) alarms (100) alarm template (83) Automation (223) automation scipt (111) Automation script (167) backup (71) Cassandra (180) Connector (109) Correlation (69) Correlation rule (52) Cube (151) Dashboard (194) Dashboards (188) database (83) DataMiner Cube (57) DIS (81) DMS (71) DOM (140) driver (65) DVE (56) Elastic (83) Elasticsearch (115) elements (80) Failover (104) GQI (159) HTTP (76) IDP (74) LCA (152) low code app (166) low code apps (93) lowcodeapps (75) MySQL (53) protocol (203) QAction (83) security (88) SNMP (86) SRM (337) table (54) trending (87) upgrade (62) Visio (539) Visual Overview (345)
Privacy Policy • Terms & Conditions • Contact

© 2025 Skyline Communications. All rights reserved.

DOJO Q&A widget

Can't find what you need?

? Explore the Q&A DataMiner Docs

[ Placeholder content for popup link ] WordPress Download Manager - Best Download Management Plugin