Skip to content

Instantly share code, notes, and snippets.

@jonwagner
Created November 25, 2013 02:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jonwagner/7635578 to your computer and use it in GitHub Desktop.
Save jonwagner/7635578 to your computer and use it in GitHub Desktop.
Sample code for using 64-bit Oracle driver with Insight.Database
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Insight.Database;
using Insight.Database.Providers.Oracle;
using Oracle.DataAccess.Client;
namespace orahell
{
class Result1
{
public int val;
}
class Program
{
static void Main(string[] args)
{
OracleInsightDbProvider.RegisterProvider();
var connectionStringBuilder = new OracleConnectionStringBuilder();
connectionStringBuilder.ConnectionString = "Data Source = (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521))); User Id = system; Password = Password1";
using (var c = connectionStringBuilder.OpenWithTransaction())
{
c.ExecuteSql(@"
CREATE OR REPLACE PROCEDURE OracleTestProc (r out sys_refcursor, r2 out sys_refcursor) IS
BEGIN
open r for select 1 as val from dual;
open r2 for select 1 as val from dual;
END;");
var results = c.QueryResults<Result1, Result1>("OracleTestProc");
var list1 = results.Set1;
var list2 = results.Set2;
var list3 = c.Query<Result1>("OracleTestProc");
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment