Method Flow : 서비스 중지 -> 캐시 삭제 -> 중지한 서비스 시작 -> update 설치

 


[ 제어판 - 시스템 및 보안 - 관리도구 - 서비스 ]

 

또는

 

[ 작업관리자 - 서비스탭 - (우측하단) 서비스 ]

 

를 눌러서 서비스를 띄웁니다.

 

B를 눌러서 Background Intelligent Transfer Service

C를 눌러서 Cryptographic Services

W를 눌러서 Windows Update


 

중지 시키고 나서 아래를 진행합니다.

 

Windows 폴더로 가서 Update관련 Cache 관련 폴더 2개를 삭제해야 합니다. (아래 캡처 참고)

 

C:\Windows\SoftwareDistribution

C:\Windows\System32\catroot2

 

 

 

 

앞서 중단했던 서비스들을 다시 살려야 합니다.

 


[ 제어판 - 시스템 및 보안 - 관리도구 - 서비스 ]

 

또는

 

[ 작업관리자 - 서비스탭 - (우측하단) 서비스 ]

 

를 눌러서 서비스를 띄웁니다.

 

B를 눌러서 Background Intelligent Transfer Service

C를 눌러서 Cryptographic Services

W를 눌러서 Windows Update


 

각각의 서비스들을 시작합니다.

 

그리고 롤업 업데이트를 수동 설치합니다.

본인의 운영체제에 맞는 파일(KB3020369, KB3172605)을 아래의 링크로 타고 들어가서 각각 다운로드 후 설치합니다.

(설치가 안되면 위에 했던 작업을 다시 한번 더 진행합니다.)

KB3020369

32bit : https://www.microsoft.com/ko-kr/download/details.aspx?id=46827


KB3172605

32bit : https://www.microsoft.com/ko-kr/download/details.aspx?id=53335

64bit : https://www.microsoft.com/ko-kr/download/details.aspx?id=53332

 

 

 

재부팅 하고 나면 윈도우업데이트가 정상적으로 되는것을 확인할수 있습니다. 

 

- 끝 -



1. CREATE 명령 ( 생성하기 )

   (1) 테이블 복사(특정컬럼만)

      [EX] CREATE TABLE [원하는 TABLE명]

            AS

               SELECT ... 

               FROM [복사할 TABLE명]

               WHERE ... ;



   (2) 테이블 복사(구조만)

      [EX] CREATE TABLE [원하는 TABLE명]

            AS

               SELECT * FROM [복사할 TABLE명] WHERE 1=2;



   (3) 가상 컬럼 테이블 생성(11g, 12c 가능)

      : 임의로 연산된 값이 들어갈 수 있도록 설정 가능 ( 유지보수 하기 힘들듯.. 그래서 딱히 쓰일지는 모르겠다. )


      [EX] CREATE TABLE [원하는 TABLE명]

            (

               NO1 NUMBER NOT NULL

              ,NO2 NUMBER NOT NULL

              ,NO3 NUMBER GENERATED ALWAYS AS (NO1 + NO2) VIRTUAL

            );

                                                                                            - VIRTUAL은 생략 가능!

      [조회방법]

         INSERT INTO [생성된 TABLE명] (NO1, NO2) VALUES (10, 20);

   SELECT * FROM [생성된 TABLE명];




2. ALTER 명령 ( 수정하기 )

   (1) 컬럼 추가

      [EX] ALTER TABLE [생성된 TABLE명]

            ADD ( [원하는 COLUMN명] VARCHAR(20) );


   (2) 컬럼명 변경

      [EX] ALTER TABLE [생성된 TABLE명] RENAME COLUMN [바꾸기 전 COLUMN명] TO [바꾼 후 COLUMN명];


   (3) 컬럼 삭제

      [EX] ALTER TABLE [생성된 TABLE명] DROP COLUMN [생성된 COLUMN명];


   (4) 읽기 전용 & 읽기/쓰기 전용으로 셋팅 : 변경이 잘 없는 코드성 자료에 쓰기 적합

      ALTER TABLE [생성된 TABLE명] READ WRITE;

      ALTER TABLE [생성된 TABLE명] READ ONLY;


     -> ui 단(변경이 잘 없는 부분)에서 풀고 쓰기를 활용해서 값 저장하고 읽기 전용으로 다시 묶는 방식으로 쓰면 괜찮을듯




3. TRUNCATE 명령

   : TABLE 남기고, DATA, MEMORY, INDEX 모두 삭제

   * 주의할점 : ROLLBACK 불가능, 무조건 전체 삭제, TABLE 처음 상태로 초기화

    (DELETE 보다 빠르게 처리함, 대용량 DATA처리에 유리)


   [EX] TRUNCATE TABLE [삭제할 TABLE명];




4. DROP 명령

   : TABLE을 포함해서 전부 다 삭제

   [EX] DROP TABLE [삭제할 TABLE명];


1. VIEW(뷰)

   (1) 테이블이 다른 사용자가 봐서는 안되는 컬럼이 있을 때, 컬럼 가리고 보여주고 싶을 때

   (2) 복잡하고 자주 Join을 할 때

   (3) 날리는 쿼리의 길이가 짧으니 Network 트래픽에 도움을 준다.


-> 권한이 안주어져 있는 계정이라면 SYS 계정으로 권한을 부여해야 한다.

    (ORACLE에서 지원하는 연습계정은 권한이 부여 되어 있는듯?)

       HR>CONN / AS SYSDBA;

       SYS>GRANT CREATE VIEW TO HR;


   [EX] CREATE OR REPLACE VIEW [V_원하는 명칭]

         AS

             SELECT ... FROM ... WHERE ... ;

         

         -> 삭제는 DROP VIEW [V_원하는 명칭];


   * Inline VIEW(1회용 뷰) : FROM절에 서브쿼리를 써줌

        [EX] SELECT ... 

              FROM SELECT ...

                         FROM ...

                         WHERE ... )

              WHERE ... ;



2. SEQUENCE(시퀀스) : 자동증가(넘버링)

   -> 동시 접속이 생기는 상황에서 유용할듯?


   [EX] CREATE SEQUENCE [SEQ_원하는 명칭]

         INCREMENT BY 1 -- 증가값

         MINVALUE 1       -- 최소값

         START WITH 1     -- 시작번호(기본값 1)

         ;

        -> 조건을 더 다양하게 줄 수 있지만 머리 아프니깐 생략!


        INSERT INTO [생성되어 있는 테이블명]

   VALUES ( [SEQ_원하는 명칭].NEXTVAL, 'ORACLE 기초', '기초학습자', '20161221' );


         -> 삭제는 DROP SEQUENCE [SEQ_원하는 명칭];

+ Recent posts