'프로그래밍 Tip/ASP & 기타'에 해당되는 글 3건

C# 에서 Oracle(오라클) 데이터베이스를 사용하는 예제입니다.

 

C#에서 Oracle을 엑세스하기 위해서는 .NET에서 제공하는 .NET Framework Data Provider for Oracle을 사용하거나 오라클에서 제공하는 Oracle Data Provider for .NET (ODP.NET)을 사용할 수 있다.

이 외에 오랜 방식이지만 OLEDB나 ODBC 방식도 사용할 수 있다.

.NET Data Provider이나 ODP.NET이나 실제 코딩에서 사용하는 방식은 비슷하다.

여기서는 .NET Framework Data Provider for Oracle의 예제를 살펴 보는데,

이 Oralce 드라이버를 사용하기 위해서는 먼저 아래 그림에서 같이 System.Data.OracleClient.dll을 참조(Reference) 추가해야 한다.

 

 

Oracle 데이타베이스 연결 

 

Oracle 데이타베이스를 연결하기 위해서는 OracleConnection 클래스를 사용한다.

Connection 클래스를 생성할 때는 Connection String을 넣어 주어야 하는데,

여기에는 Data Source명, 사용자명, 암호등을 지정해 준다.

아래 예는 ABC 서버에 사용자명 hr 과 암호명 123을 사용하여 오라클 데이타베이스에 접속하는 예이다. 

 


 string strConn= "Data Source=ABC;User Id=hr;Password=123;Integrated Security=no;";
OracleConnection conn = new OracleConnection(strConn);
...
conn.Close();

 

 

Oracle 데이타 INSERT, UPDATE, DELETE 

 

데이타의 삽입, 삭제, 갱신등은 OracleCommand에 해당 SQL문을 지정하여 실행한다.

먼저 OracleConnection을 사용해 Oracle 서버 연결을 한 후, OracleCommand에 INSERT, UPDATE, DELETE 등의 SQL문을 지정하여 실행하면 된다.

아래는 한 ROW를 INSERT하는 예제이다. 

 

 

// .NET Framework Data Provider for Oracle  // 오라클 연결 문자열         private string _strConn = "Data Source=YPC;User Id=hr;Password=hr;Integrated Security=no;"; // 데이타 쓰기         private void btnAdd_Click(object sender, EventArgs e) {

    // 오라클 연결

    OracleConnection conn = new OracleConnection(_strConn);

    conn.Open();

 

    // 명령 객체 생성

    OracleCommand cmd = new OracleCommand();

    cmd.Connection = conn;

 

    // SQL문 지정 및 INSERT 실행

    cmd.CommandText = "INSERT INTO REGIONS VALUES (5, 'Africa')";

    cmd.ExecuteNonQuery();

    conn.Close();

}

 

 

Oracle 데이타 읽기 

Oracle에서 데이타를 가져오기 위해서는 OracleCommand와 OracleDataReader 혹은 OracleDataAdapter 클래스를 사용한다.

OracleDataReader는 연결모드로 데이타를 서버에서 가져오게 되며, 클라이언트에서 루프를 돌며 한 ROW씩 가져오게 된다.

OracleDataAdapter는 한꺼번에 클라이언트 메모리로 데이타를 가져온후 연결을 끊게 되는데, DataGridView와 같은 그리드 컨트롤에 바인딩할 때 유용하다. 

 

// .NET Framework Data Provider for Oracle : 오라클 연결 문자열         private string _strConn = "Data Source=YPC;User Id=hr;Password=hr;Integrated Security=no;"; // 데이타 읽기

 

private void btnGetData_Click(object sender, EventArgs e) {     // 오라클 서버 연결 객체 생성     using (OracleConnection conn = new OracleConnection(_strConn))     {         // 연결

        conn.Open();

 

        // 명령 객체 생성

        OracleCommand cmd = new OracleCommand();

        cmd.Connection = conn;

        cmd.CommandText = "SELECT * FROM employees";

 

        // 결과 리더 객체를 리턴

        OracleDataReader rdr = cmd.ExecuteReader();

 

        // 레코드 계속 가져와서 루핑

        while (rdr.Read()) {

            // 필드 데이타 읽기

            string s = rdr["FIRST_NAME"] as string;

 

            // 데이타를 리스트박스에 추가

            listBox1.Items.Add(s);

        }

        // 사용후 닫음

        rdr.Close();

    }

}

블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,

언어별로 no-cache 설정 방법


언어별로 브라우저에 페이지별 강제 캐쉬 콘트롤 하는 예제입니다~~



HTML인 경우 

<META http-equiv="Expires" content="-1"> 

<META http-equiv="Pragma" content="no-cache"> 

<META http-equiv="Cache-Control" content="No-Cache"> 


ASP인 경우   

<%   

Response.Expires = 0   

Response.AddHeader "Pragma","no-cache"   

Response.AddHeader "Cache-Control","no-cache,must-revalidate"   

%>   


JSP인 경우   

<%   

response.setHeader("Cache-Control","no-store");   

response.setHeader("Pragma","no-cache");   

response.setDateHeader("Expires",0);   

if (request.getProtocol().equals("HTTP/1.1")) 

        response.setHeader("Cache-Control", "no-cache"); 

%>   


PHP인 경우   

<?   

header("Pragma: no-cache");   

header("Cache-Control: no-cache,must-revalidate");   

?>



블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,

개체를 찾을 수 없습니다!!


ASP 나 VB 계열에서는 정의되지 않은 변수들을 사용할때 개체를 찾을 수 없는 에러가

발생하고는 합니다.


특히나 동적인 XML 파일등을 파싱할때 없는 엘리먼트값을 구하려다 에러가 발생하곤 하지요.


그럴때...


On Error Resume Next


구문을 이용하여 해당 오류단계를 무시하고 넘어가시면 되겠습니다~


간만에 ASP 프로그램 하다가.. 이거때문에 무지 고생했엇네요 ㅠㅠ



'프로그래밍 Tip > ASP & 기타' 카테고리의 다른 글

[C#] Oracle Database 연결 및 사용  (0) 2019.07.16
언어별로 no-cache 설정 방법  (0) 2017.07.10
블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,