1. ODP.NET을 다운받자.
적당히 오라클버전에 맞는것을 선택해서 다운받자.
32-bit Oracle Data Access Components (ODAC) with Oracle Developer Tools for Visual Studio
설치하자.
2. C: 또는 D: 아래 app\Administrator\product\11.2.0\client_1\NETWORK\ADMIN\SAMPLE
아래의 tnsname.ora 파일을 복사해서 한단계위 ADMIN 폴더에 복사 후 아래처럼 수정하자.
// on는 tnsname이다. C#등에서 DB접속문자열 쓸대 data source에 써주는 이름
onj =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <DB IP주소>)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = onj) -- DB 서비스이름(DB명)
)
)
3. 간단히 C# 프로그램하나 짜서 접속을 테스트 해보자.
using System;
using System.Data;
using Oracle.DataAccess;
using Oracle.DataAccess.Client;
using Oracle.DataAccess.Types;
using System.Data;
using Oracle.DataAccess;
using Oracle.DataAccess.Client;
using Oracle.DataAccess.Types;
namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
//아래에서 data source의 onj는 tnsnames.ora 파일의 DB접속이름이다.
string str = "data source=onj;user id=scott; password=tiger";
OracleConnection Conn = new OracleConnection(str);
OracleCommand Comm;
OracleCommand Comm;
Comm = new OracleCommand();
Comm.Connection = Conn;
Comm.Connection = Conn;
try
{
Conn.Open();
Comm.CommandText = "SELECT ENAME FROM EMP";
OracleDataReader reader = Comm.ExecuteReader();
{
Conn.Open();
Comm.CommandText = "SELECT ENAME FROM EMP";
OracleDataReader reader = Comm.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(reader.GetString(reader.GetOrdinal("ENAME")));
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
Conn.Close();
}
}
}
}
{
Console.WriteLine(reader.GetString(reader.GetOrdinal("ENAME")));
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
Conn.Close();
}
}
}
}
[결과]
SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
아래는 간단히 접속만 확인하는 예제
using System; using Oracle.DataAccess.Client; class Example { OracleConnection con; void Connect() { con = new OracleConnection(); con.ConnectionString = "User Id=scott;Password=tiger;Data Source=onj"; con.Open(); Console.WriteLine("오라클 접속 OK"); } void Close() { con.Close(); con.Dispose(); } static void Main() { Example example = new Example(); example.Connect(); example.Close(); } }
댓글 없음:
댓글 쓰기