서버 개념 / 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 |
'C#' 카테고리의 다른 글
| 스마트팩토리 5주 21일차 C# 15일차 (0) | 2021.05.25 |
|---|---|
| 스마트팩토리 5주 20일차 C# 14일차 (0) | 2021.05.24 |
| 스마트팩토리 4주 18일차 C# 12일차 (0) | 2021.05.20 |
| 스마트팩토리 4주 17일차 C# 11일차 (0) | 2021.05.19 |
| 스마트팩토리 4주 16일차 C# 10일차 (0) | 2021.05.18 |




최근댓글