728x90
300x250

[진로(Career)] 미래 세상과 직업 세계

 

한마디로 정의하면, 불확실성의 세계라고 볼 수 있다.

찾아보면 도움이 되는 몇 가지 키워드로 정리하겠다.

 

1. 4차 산업혁명(Fourth Industrial Revolution)

4차 산업혁명은 ▷1784년 영국에서 시작된 증기기관과 기계화로 대표되는 1차 산업혁명 ▷1870년 전기를 이용한 대량생산이 본격화된 2차 산업혁명 ▷1969년 인터넷이 이끈 컴퓨터 정보화 및 자동화 생산시스템이 주도한 3차 산업혁명에 이어 ▷로봇이나 인공지능(AI)을 통해 실제와 가상이 통합돼 사물을 자동적·지능적으로 제어할 수 있는 가상 물리 시스템의 구축이 기대되는 산업상의 변화를 일컫는다.
Link: https://terms.naver.com/entry.nhn?docId=3377297&cid=43667&categoryId=43667


2. 긱 이코노미(Gig Economic)

기업들이 정규직 보다 필요에 따라 계약직 혹은 임시직으로 사람을 고용하는 경향이 커지는 경제상황을 일컫는 용어.
Link: https://terms.naver.com/entry.nhn?docId=3583919&cid=40942&categoryId=31846

 

3. 자율 주행(Automatic Driving)

운전자가 직접 운전하지 않고 차량이 스스로 도로에서 달리게 하는 일.
Link: https://terms.naver.com/entry.nhn?docId=2760959&cid=50307&categoryId=50307


4. 정맥으로 물건을 결제하는 무인 편의점 (동영상 백과)


5. 아마존 고(Amazon Go)

 

요약세계 최초의 무인 매장으로, 미국 전자상거래 기업 아마존이 운영함. 인공지능, 머신러닝, 컴퓨터 비전 등의 첨단기술이 활용되며, 소비자가 스마트폰에 앱을 다운로드 하고 매장에 들어가 상품을 고르기만 하면 연결된 신용카드로 비용이 청구됨.
Link: https://terms.naver.com/entry.nhn?docId=3557879&cid=43667&categoryId=43667

 

6. 드론(Drone)

 

드론은 무선전파로 조종할 수 있는 무인 항공기다. 카메라, 센서, 통신시스템 등이 탑재돼 있으며 25g부터 1200kg까지 무게와 크기도 다양하다. 드론은 군사용도로 처음 생겨났지만 최근엔 고공 촬영과 배달 등으로 확대됐다. 이뿐 아니다. 값싼 키덜트 제품으로 재탄생돼 개인도 부담없이 드론을 구매하는 시대를 맞이했다. 농약을 살포하거나, 공기질을 측정하는 등 다방면에 활용되고 있다.

Link: https://terms.naver.com/entry.nhn?docId=3579107&cid=59088&categoryId=59096

 

반응형
728x90
300x250
[진로(Career)] 오프라인 대학 vs 온라인 대학

 

오프라인 대학과 온라인 대학에 대해서 정리해보았다.
구체적으로 무엇이 장단점인지 국내(Local) 기준으로 적어보았다.

 

 

오프라인 대학

온라인 대학

등록금

 비싸다. 100 ~ 800만원 / 1학기

 30만원~130만원 내외(1학기)

 지각 가능

여부

 가능함.

 단, 택시비가 엄청 많이 든다. 비용은 1~2만원 예상

 해당없음.

식사

 해야 함. 한끼 (3,500~4,500원)

 필요없음.

교재 주문

 1권당 3~4만원 x 7과목 = 21만원 예상

 사이버 대학에서 제공해주는 교제

 (1만원~3만원 내외 x 7 = 14만원)

실습

 * 과목 마다 다름.

    (학부생 기준: 140학점 기준 4~10과목이면 많이 하는 것)

 -> 실습장에서 실습을 100%로 하는 것이 아니라

     개인 노트북에 토렌트로 예를 들면 eclipse 등을 설치해서

     실습을 하는 것.

 * 원격 실습장(사이버랩),
   최근에는 개방형 실습 랩이 많음.
   (기계공작소, 3D프린트 창작소, 3D CNC 공작소 등)

비고

 * 특정 자격증 제한이 있는 학과(의예과, 간호학과, 화학과)

 * 방송대에 간호학과 설치되어 있음. 
   (간호사 자격증이 있는 사람에 한해서 운영됨.

    간호사 자격증 취득 트랙은 운영하진 않음.)

 

 

반응형
728x90
300x250

[PHP] Oracle, MySQL - PDO 사용방법

 

간결하게 요약해서 작성해보았다.

 


1. Oracle, MySQL 데이터베이스 설계하기

 

데이터베이스를 하나 생성한다.

Member를 생성한다.

 

 

그림 1) Oracle SQL Developer에서 Member 테이블 생성하기(Oracle 18c Express Edition)

 

 

그림 2) HeidiSQL에서 Member 테이블 생성하기(MySQL)

 

 
  CREATE TABLE "C##RABBITSUN2"."MEMBER"
   ( "ID" VARCHAR2(20 BYTE) NOT NULL ENABLE,
 "SUBJECT" VARCHAR2(20 BYTE),
  CONSTRAINT "MEMBER_PK" PRIMARY KEY ("ID")
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "USERS"  ENABLE
   ) SEGMENT CREATION IMMEDIATE
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "USERS" ;

  CREATE OR REPLACE EDITIONABLE TRIGGER "C##RABBITSUN2"."MEMBER_TRG"
BEFORE INSERT ON MEMBER
FOR EACH ROW
BEGIN
  <<COLUMN_SEQUENCES>>
  BEGIN
       IF INSERTING AND :NEW.ID IS NULL THEN
           SELECT MEMBER_SEQ.NEXTVAL INTO :NEW.ID FROM SYS.DUAL;
           END IF;
  END COLUMN_SEQUENCES;
END;
/
ALTER TRIGGER "C##RABBITSUN2"."MEMBER_TRG" ENABLE;

 Oracle SQL

 CREATE TABLE `member` (
     `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
     `subject` VARCHAR(50) NULL DEFAULT NULL,
      PRIMARY KEY (`id`)
 )
 COLLATE='utf8_general_ci'
 ENGINE=InnoDB
 AUTO_INCREMENT=1;

 MySQL SQL

 

 

 


2. Oracle, MySQL - PDO 사용방법(소스코드)

 

<?php

/*
 * Subject: PDO
 * Created Date: 2019-12-10
 * Author by: 도도(Dodo) / rabbitsun2@gmail.com
 * Description:
 *
 * Reference:
 * 
 */

include 'MySQLDB.php';
include 'OracleDB.php';

$orcl = new OracleDB('127.0.0.1', 'c##rabbitsun2', '1234');
$orcl->connect();

// SELECT 문(OracleDB)
$query = "SELECT * FROM MEMBER";
$list = $orcl->select($query);

/*
foreach($list as $row){
   
    echo $row["ID"] . "/";
    echo $row["SUBJECT"] . "<br>";
   
}
*/

// INSERT 문(OracleDB)
//$subject = '연습';
//$result = $orcl->insert($subject);

$mysqlDB = new MySQLDB('127.0.0.1', 'rabbit2me', '1234', 'rabbit2me');
$mysqlDB->connect();

$list = $mysqlDB->select($query);

foreach($list as $row){
   echo $row["id"] . "/";
   echo $row["subject"] . "<br>";
}
 
$subject = '연습';
$result = $mysqlDB->insert($subject);

?>


[소스코드: index.php]

 

?>

class MySQLDB{
   
    private $hostName;
    private $userName;
    private $passwd;
    private $tns;
    private $dbh;
   
    public function __construct($hostName, $userName, $passwd, $dbname){
       
        $this->tns = "mysql:host=$hostName;dbname=$dbname";
       
        $this->hostName = $hostName;
        $this->userName = $userName;
        $this->passwd = $passwd;
       
       
    }
   
    public function __destruct(){
        unset($this->dbh);
    }
   
    public function connect(){
       
        $tns = $this->tns;
        $db_username = $this->userName;
        $db_password = $this->passwd;
       
        try{
            $this->dbh = new PDO($this->tns, $db_username, $db_password,
                array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
            //echo "참";
        }catch(PDOException $e){
            echo ($e->getMessage());
        }
       
    }
   
    public function select($query){
       
        $stmt = NULL;
        $dbh = $this->dbh;
       
        if ( $dbh != NULL ){
            $stmt = $dbh->prepare($query);
            $stmt->execute();
            $list = $stmt->fetchAll();
           
            return $list;
        }
       
        return NULL;
       
    }
   
    public function insert($subject){
       
        $stmt = NULL;
        $dbh = $this->dbh;
        $query = "INSERT INTO member(subject) VALUES(:subject)";
       
        if ( $dbh != NULL ){
            $stmt = $dbh->prepare($query);
            $stmt->bindParam(':subject', $subject);
            $stmt->execute();
           
            return true;
        }
       
        return false;
       
    }
   
}

?>


[소스코드: MySQLDB.php]

 

?>
class OracleDB{
   
    private $hostName;
    private $userName;
    private $passwd;
    private $tns;
    private $dbh;
   
    public function __construct($hostName, $userName, $passwd){
       
        $this->tns = "(DESCRIPTION =
            (ADDRESS_LIST =
              (ADDRESS = (PROTOCOL = TCP)(HOST = $hostName)(PORT = 1521))
            )
            (CONNECT_DATA =
              (SERVICE_NAME = xe)
            )
        )";
       
        $this->hostName = $hostName;
        $this->userName = $userName;
        $this->passwd = $passwd;
        $this->dbh = NULL;
       
    }
   
    public function __destruct(){
        unset($this->dbh);
    }
   
    public function connect(){
       
        $tns = $this->tns;
        $db_username = $this->userName;
        $db_password = $this->passwd;
       
        try{
            $this->dbh = new PDO("oci:dbname=". $tns . ";charset=UTF8", $db_username, $db_password);
            //echo "참";
        }catch(PDOException $e){
            echo ($e->getMessage());
        }
       
    }
   
    public function select($query){
       
        $stmt = NULL;
        $dbh = $this->dbh;
       
        if ( $dbh != NULL ){
            $stmt = $dbh->prepare($query);
            $stmt->execute();
            $list = $stmt->fetchAll();
           
            return $list;
        }
       
        return NULL;
       
    }
   
    public function insert($subject){
        $stmt = NULL;
        $dbh = $this->dbh;
        $query = "INSERT INTO MEMBER(SUBJECT) VALUES(:subject)";
       
        if ( $dbh != NULL ){
            $stmt = $dbh->prepare($query);
            $stmt->bindParam(':subject', $subject);
            $stmt->execute();
           
            return true;
        }
       
        return false;
       
    }
   
}

?>


[소스코드: OracleDB.php]

반응형
728x90
300x250
[PC활용] Oracle 11 Later(이상) - SQLPlus (접속, 계정생성, 계정삭제, 패스워드 수정)

 

Oracle 11g 이상에서 SQLPlus로 접속, 계정생성, 계정삭제, 패스워드 수정하는 방법에 대해 소개하겠다.

 


1. 명령 프롬프트 실행하기

 

실행 -> "cmd"

 

그림 1) cmb(명령 프롬프트) 켜기

 

 

 

 

그림 2) Oracle Database 18c Express Edition - SQLPlus

 


2. 주요 명령어

 

● 계정생성

'create user 'C##유저명' identified by 패스워드  명령어로 계정을 생성한다. (안 되면 아래의 형태로 시도해볼 것)
create user c##계정이름 identified by 비밀번호; 


● 권한부여

- 'grant connect, dba, resource to 유저명'  명령어로 계정에 권한을 준다.


● 계정 패스워드 변경
- 'alter user 유저명 identified by 패스워드'  명령어로 계정의 패스워드를 변경한다.


●계정 삭제

- 'drop user 유저명 cascade' 명령어로 계정을 삭제한다.

반응형
728x90
300x250

[PC활용] Oracle 18g Express Edition 설치하기

 

Oracle 18g Express Edition 설치하는 방법에 대해서 소개하겠다.

 

[작성 환경]
Microsoft Windows 10 64bit

 


1. Oracle 18g Express Edition 내려받기

 

https://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html

 


2. Oracle 18g Express Edition 설치하기

 

 

그림 1) Oracle Database 18c 압축풀기

 

그림 1에서 "setup.exe"를 더블 클릭해준다.

 

 

그림 2) Oracle Database 18c 설치하기

 

잠시 기다린다.

 

 

그림 3) Oracle Database 18c 설치하기

 

"다음(N)"을 클릭한다.

 

 

그림 4) Oracle Database 18c 설치하기

 

라이선스를 읽어본 후 "다음(N)"을 클릭한다.

 

 

그림 5) Oracle Database 18c 설치하기

 

폴더 위치를 지정 후 "다음(N)"을 클릭한다.

 

 

그림 6) Oracle Database 18c 설치하기

 

그림 6에서 데이터베이스 비밀번호를 입력해준다.

그리고 "다음(N)"을 클릭한다.

 

 

그림 7) Oracle Database 18c 설치하기

 

환경 설정에 대한 내용을 검토 후 "설치(I)"를 클릭한다.

 

 

그림 8) Oracle Database 18c 설치하기

 

그림 9) 방화벽에 관한 사항 - Oracle 18c Express Edtion

 

방화벽에 대한 사항이 나온다. "액세스 허용(A)"을 해준다.

 

 

그림 10) Oracle 18c 설치하기

 

잠시 기다리도록 한다.

 

 

그림 11) Oracle 18c 설치하기

 


3. Oracle 18g Express Edition 웹에서 실행하기

오라클 18g을 웹에서 실행한 모습이다.

https://localhost:5500/em

 

그림 12) 웹에서 실행하는 오라클 18g Express Edtion

 

 

반응형
728x90
300x250
[PHP] xampp v3.2.4에서 Oracle-PDO, MySQLi 등 설정하기

 

xampp v3.2.4에서 Oracle-PDO, MySQLi 등 설정하는 방법에 대해 간단하게 소개하겠다.

아래의 그림을 따라하면 된다.

 


1. php.ini 환경설정 하기

 

XAMPP Control Panel v3.2.4은 C:\xampp에 있다.

xampp-control.exe를 더블클릭한다.

 

 

그림 1) xampp v3.2.4 설정하기의 예

 

 

그림 2) xampp v3.2.4 설정하기의 예

 

그림 2처럼 찾기 창을 띄우려면, Ctrl + F를 누른다.

oci를 입력한다.

 

 

그림 3) xampp v3.2.4 설정하기의 예

 

사용하고자 하는 ;extension을 extension으로 바꾼다.

 

 사용하지 않는 것

 사용하는 것

 ;extension

 extension

 

 

 

그림 4) xampp v3.2.4 서비스 시작

 

Apache의 Start를 누르면 그림 4처럼 바뀐다. Apache 글자배경이 녹색계열로 뜨면 정상적으로 서비스가 실행되었음을 알리는 것이다.

 


2. 셈플 소스코드(PHP-PDO)

 

PHP 셈플 코드이다.

 

 

 

그림 5) PHP-PDO-oci 셈플코드

 

<?php

$tns = " 
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = xe)
    )
  )
       ";
$db_username = "c##rabbitsun2";
$db_password = "1234";

try{

    $conn = new PDO("oci:dbname=".$tns,$db_username,$db_password);
    echo "참";

    }catch(PDOException $e){
    echo ($e->getMessage());
}
 
?>

 

 

그림 6) PHP-PDO-oci 셈플코드 (웹사이트에서 접속하기)

 

그림 6은 localhost/test.php에서 확인할 수 있다.

 


* 참고자료(Reference)

1. PHP: Oracle (PDO) - Manual, Last Modified, Accessed by 2019-12-10, https://www.php.net/manual/en/ref.pdo-oci.php

반응형
728x90
300x250
[PHP] Apache 2.4, PHP 7, Oracle 18c Express Edition 윈도우 환경에서 연동하기

 

PHP 7 그리고 Oracle 18c Express Edition을 연동하는 방법에 대해서 소개하겠다.

 

[작성환경]

MS윈도우 10 64bit (Microsoft Windows 10 64bit)

 


1. Oracle 내려받기

 

https://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html

 

 

 

그림 1) Oracle 18c Express 내려받는 모습

 

 


2. Apache2.4에 PHP 7.3.12 연동하기

 

Apache24 - https://www.apachelounge.com/

PHP 7.3.12 - https://www.php.net/downloads.php

 

 

 

그림 2) Apache2.4에 연동하기 위한 모습(1단계)

 

 

 

 

그림 3) Apache2.4에 연동하기 위한 모습(2단계)

 

그림 3은 php.ini-production 파일을 복사 붙여넣기하여 php.ini으로 변경한 것이다.

 


3. Apache2.4의 conf\httpd.conf 설정하기


소스코드 285줄을 보면, DirectoryIndex가 있다.

index.php을 추가한다.

 

 수정 전

 수정 후

 <IfModule dir_module>

         DirectoryIndex index.html

 </IfModule>

 <IfModule dir_module>

         DirectoryIndex index.html index.php

 </IfModule>

 

 

 

그림 4) conf\httpd.conf 수정하기

 

 

그림 5) Apache 2.4 맨 하단에 php 모듈 적용시키기

 

그림 5처럼 맨 하단에 php 모듈을 적용시킨다.

 

# [추가하기]
PHPIniDir "C:/php7"
LoadModule php7_module "C:/php7/php7apache2_4.dll"
AddType application/x-httpd-php .html .php
AddHandler application/x-httpd-php .php

 

 


4. PHP 폴더명 변경하기

 

PHP 폴더명은 php7로 변경해준다.

 

 

그림 6) php7 폴더명 변경해주기

 


5. Apache 2.4의 htdocs 폴더 내에 phpinfo.php 생성하기

 

C:\Apache24\htdocs\ 내에 phpinfo.php을 만들어준다.

그리고 아래처럼 타이핑을 해준다.

 

 

그림 7) phpinfo.php 파일 만들기

 


6. PHP에 Oracle 연동하기

 

아래의 그림은 초기 php.ini의 모습이다.

 

 

그림 8) php.ini 초기 설정의 모습

 

수정할 내용은 ";extension=pdo_oci"를 "extension=pdo_oci" 이렇게 바꿀 것이다.

 

 

그림 9) php.ini 환경설정 변경의 예(1)

 

 변경 전

 변경 후

 ;extension=mbstring

 extension=mbstring

 ;extension=mysqli

 extension=mysqli

 ;extension=pdo_mysql

 extension=pdo_mysql

 ;extension=pdo_oci

 extension=pdo_oci

 

 

 

 

 

그림 10) php.ini 환경설정 변경의 예(2)

 


7. Oracle Instant Client Downloads

 

https://www.oracle.com/database/technologies/instant-client/downloads.html

 

 

그림 11) Instant Client - Oracle

 

 

그림 12) Instant Client - Oracle

 

 

그림 13) Instant Client - Oracle

 

그림 13처럼 C:\util\Instantclient.version으로 옮겨준다.

 


8. Instant Client를 위한 시스템 속성 변경해주기

 

Instant Client를 위한 시스템 속성 변경해준다.

내 PC에서 시스템 속성을 클릭한다.

 

 

그림 14) 시스템 속성 클릭하기

 

 

그림 15) 시스템 정보 클릭하기

 

 

그림 16) 고급 시스템 설정 클릭하기

 

 

그림 17) Instant Client - Oracle

 

"고급" 탭 클릭 후 "환경 변수(N)..."을 클릭한다.

 

그림 18) Instant Client - Oracle

 

시스템 변수(S)의 Path 변수를 클릭 후 "편집(I)..."을 클릭한다.

 

 

그림 19) Instant Client - Oracle

 

그리고 C:\util\instantclient_version을 찾아보기하여 등록한다.

 


8. PHP-PDO-OCI

 

https://www.php.net/manual/en/ref.pdo-oci.php

 

안 될 경우에는 https://www.apachefriends.org/index.html 에 접속하셔서 xampp로 진행하는 것도 하나의 방법이다.
개발이 목적이기 때문이다.
반응형
728x90
300x250

[PC활용] Oracle SQL Developer 설치하기(19.2)

 

Oracle 18g Express Edition을 설치하면, Oracle SQL Developer가 없기 때문에 추가적으로 설치해야 한다.

그래서 이번에는 Oracle SQL Developer 설치에 대해서 소개하겠다.

 


1. SQL Developer 다운로드 받기

 

https://www.oracle.com/kr/tools/downloads/sqldev-v192-downloads.html

 

 

그림 1) SQL Developer 19.2.1 웹 사이트 - Oracle

 


2. SQL Developer 실행하기

 

sqldeveloper.exe를 더블클릭한다.

 

 

그림 2) SQL Developer 실행하기

 

 

그림 3) SQL Developer 실행하기

 

 

그림 4) SQL Developer 실행하기

 

 

그림 5) SQL Developer 실행하기

 


3. "c##계정명"으로 로그인해보기 그리고 테이블 만들기

 

그림 6, 그림 7은 "C##계정명" 계정이 존재한다고 가정하고 작성한 것이다.

계정을 만들고 진행하면 된다.

 

 

그림 6) Oracle Developer 로그인

 

그림 7) 테이블 만들기의 예 - Oracle

 


* 참고자료(Reference)

 

1. Oracle SQL Developer Downloads | Oracle 대한민국, Last Modified 2019-09-12, Accessed by 2019-12-10, https://www.oracle.com/kr/tools/downloads/sqldev-v192-downloads.html

반응형

+ Recent posts