728x90

서버 개념 / FTP server / Oracle Server

FilezZlla

 

FileZilla 클라이언트 설치

파일 - 사이트관리자 - new site - 호스트 입력 포트 21 사용자 비밀번호 입력 - 전송 설정 - 능동형 - 연결

방화벽 - 고급 설정 - 인바운드규칙 - 새 규칙 - 포트 - 특정 로컬 포트 1521

 

파일주고받는데 h.264로 영상 재생하게 하면 스트림 서버가 됨

 

클라이언트 개념 / FTP client / Oracle Client

 

방화벽 개념 / 포트(Port) 개념

 

사용법

 

오라클 11g xe 설치

자바 11 설치

 

cmd

sqlplus

/as sysdba

conn system

비밀번호 입력

alter user hr account unlock;

alter user hr identified by hr;

 

sql developer 설치

show user;

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Oracle_query_test01
{
    class Program
    {
        static void Main(string[] args)
        {
            // 오라클 연결 문자열        
 
            string strConn = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xe)));User Id=hr;Password=hr;";
 
            // 1. 연결 객체 만들기 - Client
            OracleConnection conn = new OracleConnection(strConn);
 
            // 2. 데이터베이스 접속을 위한 연결
            conn.Open();
 
            // 3. 서버와 함께 신나게 놀기
            // ~~~
 
            // 4. 리소스 반환 및 종료
            conn.Close();
        }
    }
}
cs

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Oracle_query_test02_create
{
    class Program
    {
        static void Main(string[] args)
        {
            // 오라클 연결 문자열        
 
            string strConn = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xe)));User Id=hr;Password=hr;";
 
            // 1. 연결 객체 만들기 - Client
            OracleConnection conn = new OracleConnection(strConn);
 
            // 2. 데이터베이스 접속을 위한 연결
            conn.Open();
 
            // 3. 서버와 함께 신나게 놀기
            // 3.1 Query 명령객체 만들기
            OracleCommand cmd = new OracleCommand();
            cmd.Connection = conn;
            // 3. 명령하기, 테이블 생성하기
            cmd.CommandText = "Create Table PhoneBook (ID number(4) PRIMARY KEY,NAME varchar(20),HP varchar(20))";
            // 3.3 쿼리 실행하기
            cmd.ExecuteNonQuery();
            // 3.4 쿼리 삽입하기
            cmd.CommandText = "INSERT INTO PhoneBook VALUES (1, '이순신', '010-1111-1111')";
            cmd.ExecuteNonQuery();
 
            // 4. 리소스 반환 및 종료
            conn.Close();
        }
    }
}
cs

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Oracle_query_test03_insert_delete
{
    class Program
    {
        static void Main(string[] args)
        {
            // 오라클 연결 문자열        
            string strConn = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xe)));User Id=hr;Password=hr;";
 
            // 1. 연결 객체 만들기 - Client
            OracleConnection conn = new OracleConnection(strConn);
 
            // 2. 데이터베이스 접속을 위한 연결
            conn.Open();
 
            // 3. 서버와 함께 신나게 놀기
            // 3.1 Query 명령객체 만들기
            OracleCommand cmd = new OracleCommand();
            cmd.Connection = conn;
            cmd.CommandText = "Create Table PhoneBook (ID number(4) PRIMARY KEY,NAME varchar(20),HP varchar(20))";
            cmd.ExecuteNonQuery();
            cmd.CommandText = "INSERT INTO PhoneBook VALUES (1, '이순신', '010-1111-1111')";
            cmd.ExecuteNonQuery();
            // 3. 삽입
            cmd.CommandText = "INSERT INTO PhoneBook VALUES (2, '강감찬', '010-2222-2222')";
            cmd.ExecuteNonQuery();
            cmd.CommandText = "INSERT INTO PhoneBook VALUES (3, '을지문덕', '010-3333-3333')";
            cmd.ExecuteNonQuery();
            cmd.CommandText = "DELETE FROM PhoneBook WHERE ID = 1";
            cmd.ExecuteNonQuery();
 
            // 4. 리소스 반환 및 종료
            conn.Close();
        }
    }
}
cs

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Oracle_query_test04_update
{
    class Program
    {
        static void Main(string[] args)
        {
            // 오라클 연결 문자열        
            string strConn = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xe)));User Id=hr;Password=hr;";
            // 1. 연결 객체 만들기 - Client
            OracleConnection conn = new OracleConnection(strConn);
            // 2. 데이터베이스 접속을 위한 연결
            conn.Open();
            // 3. 서버와 함께 신나게 놀기
            // 3.1 Query 명령객체 만들기
            OracleCommand cmd = new OracleCommand();
            cmd.Connection = conn;
            cmd.CommandText = "UPDATE PhoneBook SET HP = '010-7777-7777' WHERE ID=2";
            cmd.ExecuteNonQuery();
            // 4. 리소스 반환 및 종료
            conn.Close();
        }
    }
}
cs

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Oracle_query_test05_select
{
    class Program
    {
        static void Main(string[] args)
        {
            // 오라클 연결 문자열        
            string strConn = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xe)));User Id=hr;Password=hr;";
 
            // 1. 연결 객체 만들기 - Client
            OracleConnection conn = new OracleConnection(strConn);
 
            // 2. 데이터베이스 접속을 위한 연결
            conn.Open();
 
            // 3. 서버와 함께 신나게 놀기
            // 3.1 Query 명령객체 만들기
            OracleCommand cmd = new OracleCommand();
            cmd.Connection = conn;
            cmd.CommandText = "SELECT * FROM PhoneBook";
            //cmd.ExecuteNonQuery();
 
            // 데이터 조회 결과를 리턴하는 DataReader객체를 만들어야 한다.
            OracleDataReader rdr = cmd.ExecuteReader();
 
            while (rdr.Read())
            {
                int id = rdr.GetInt32(0); // int나 number로 받을 때
                string name = rdr["NAME"as string;
                string hp = rdr["HP"as string;
 
                Console.WriteLine($"{id} : {name} : {hp}");
            }
 
            // 4. 리소스 반환 및 종료
            conn.Close();
        }
    }
}
cs

 

 

[C#][오라클연동][콘솔]

미니 주소록 만들기

 

ADDR_ID  NAME         HP          

1         홍길동    010-1111-1111

2         강호동    010-2222-2222

3         유재석    010-3333-3333

 

C#을 이용하여 다음과 같은 테이블(ADDR_TABLE) 을 만들고

 

ADDR_ID는 NUMBER(4)  PRIMARY KEY로 만들어 주세요.

NAME, HP 의 타입은 모두 VARCHAR2(20)

 

콘솔 메뉴를 만든 후 번호를 누르면 해당 작업을 수행하여 주세요.

 

1. 테이블 생성

2. 데이터 삽입

3. 데이터 조회

 

---------------------------------------------------------

 

1. 테이블 생성

2. 데이터 삽입

3. 데이터 조회

메뉴 : 1

 

테이블이 생성되었습니다.

 

------------------------------------------------------------

 

1. 테이블 생성

2. 데이터 삽입

3. 데이터 조회

메뉴 : 2

 

이름을 입력해 주세요 : 홍길동

 

전화번호를 입력해 주세요 : 010-1111-1111

 

데이터가 정상적으로 입력되었습니다.

 

-----------------------------------------------------------------

 

1. 테이블 생성

2. 데이터 삽입

3. 데이터 조회

메뉴 : 3

 

ADDR_ID  NAME         HP         

 

1         홍길동    010-1111-1111

 

------------------------------------------------

 

1. 주소록 조회 

2. 주소록 추가

3. 주소록 수정

4. 주소록 삭제

 

 

메뉴 : _______

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace MiniContacts
{
    class Program
    {
        static void Main(string[] args)
        {
            // 오라클 연결 문자열        
 
            string strConn = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xe)));User Id=hr;Password=hr;";
 
            // 오라클 연결
 
            OracleConnection conn = new OracleConnection(strConn);
 
            conn.Open();
            OracleCommand cmd = new OracleCommand();
            cmd.Connection = conn;
 
            do
            {
                int ADDR_ID = 0;
                string name="";
                string hp = "";
                Console.Write("1. 테이블 생성\n2. 데이터 삽입\n3. 데이터 조회\n메뉴:");
                int num = int.Parse(Console.ReadLine());
 
                switch (num)
                {
                    case 1:
                        cmd.CommandText = "Create Table ADDR_TABLE (ADDR_ID number(4) PRIMARY KEY,NAME varchar2(20),HP varchar2(20))";
                        cmd.ExecuteNonQuery();
                        Console.WriteLine("테이블이 생성되었습니다.\n\n");
                        Console.WriteLine("-------------------------------");
                        break;
                    case 2:
                        cmd.CommandText = "SELECT ROWNUM FROM ADDR_TABLE ORDER BY ROWNUM DESC";
                        OracleDataReader rdr = cmd.ExecuteReader();
                        while (rdr.Read())
                        {
                            ADDR_ID = rdr.GetInt32(0);
                            break;
                        }
                        
                        Console.WriteLine(ADDR_ID);
 
                        Console.Write("이름을 입력해 주세요: ");
                        name = Console.ReadLine();
                        Console.Write("전화번호를 입력해 주세요: ");
                        hp = Console.ReadLine();
                        
                        cmd.CommandText = "INSERT INTO ADDR_TABLE VALUES (" + (ADDR_ID+1+", '"+ name +"', '"+ hp +"')";
                        cmd.ExecuteNonQuery();
                        Console.WriteLine("데이터가 정상적으로 입력되었습니다.\n\n");
                        break;
                    case 3:
                        cmd.CommandText = "SELECT * FROM ADDR_TABLE";
                        OracleDataReader rdr2 = cmd.ExecuteReader();
                        while (rdr2.Read())
                        {
                            int id = rdr2.GetInt32(0); // int나 number로 받을 때
                            name = rdr2["NAME"as string;
                            hp = rdr2["HP"as string;
 
                            Console.WriteLine("ADDR_ID NAME HP");
                            Console.WriteLine($"{id} : {name} : {hp}");
                        }
                        Console.WriteLine("\n\n");
                        break;
                    default:
                        Console.WriteLine("잘못 입력하셨습니다.종료합니다.");
                        conn.Close();
                        return;
                }
            } while(true);
        }
    }
}
cs

 

728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기