블로그 이미지
No pain, no gain!
lepoussin

Tag

Notice

Recent Post

Recent Comment

Recent Trackback

Archive

calendar

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
  • total
  • today
  • yesterday
05-02 18:02
2009. 5. 13. 01:20 OS/Windows

레지스트리 편집기를 이용하는 방법

윈도우 서비스 목록에 원지 않는 서비스가 등록되었거나 소프트웨어의 언인스톨 후에도 남아있는 서비스가 있을 경우, 이를 제거하기 위해서는 레지스트리 편집이 필요하다.

  1. regedit.exe 를 먼저 실행한다.
  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 에서 삭제할 서비스 키를 찾아 선택한 후 삭제한다.
  3. 시스템을 반드시 재부팅한다.

※ 주의 사항

  1. 재부팅 후에도 혹 서비스 목록에 레지스트리를 제거한 서비스가 여전히 등록되어 있다면 레지스트리에서 HKEY_LOCAL_MACHINE\SYSTEM\ 하위에 서비스 키명으로 검색하여 목록을 모두 제거한 후에 다시 재부팅 하고 확인한다.
  2. 혹 레지스트리에서 제거되지 않을 경우 관련된 모든 프로그램을 종료하고 삭제하려는 레지스트리 키를 오른쪽 마우스로 클릭하여 권한을 확인하여 권한이 주어지지 않았다면 권한을 주고, 거부권한에 체크되어 있다면 거부권한의 체크를 푼 후 다시 제거한다.


레지스트리 편집기를 이용하지 않는 방법

NT resource kit 에는 INSTSRV.EXE 라는 서비스 설치, 제거 프로그램이 존재한다.

다음과 같은 명령을 통해 제거할 수 있다.

instsrv {서비스 이름} remove

또한 resource kit 에는 SRVINSTW.EXE 라는 서비스 설치, 제거를 위한 GUI 프로그램이 존재하여 로컬이나 리모트의 서비스를 설치, 제거 할 수 있도록 지원한다.

※ 출처 : http://blog.naver.com/givethanks77?Redirect=Log&logNo=150006901298

posted by lepoussin
2009. 5. 13. 00:54 Database/MySQL
MySQL에서 나름대로 많은 작업을 해왔지만 MS SQL에서 사용하던 FULL OUTER JOIN이 안된다는 것을 오늘에서야 알았다. 당황스러웠지만 침착하게(?) FULL OUTER JOIN 기능을 사용할 수 있는 방법에 관해서 트릭을 찾아보면서 고민을 좀 하였다.

그러는 중 내가 선택한 방법은 {LEFT | LIGHT} OUTER JOIN과 UNION의 조합이다. UNION을 이용할 때 두 질의의 결과값들이 중복되어 있을 경우, 이는 하나로 표시된다. 다음의 예제를 통해서 살펴보도록 하자.

test1과 test2 테이블을 만들고 다음과 같이 데이터를 넣어보자.

[test1] 테이블
name   age
-------------------
lin        22
sean    111

[test2] 테이블
name   age
-------------------
sean     28
ted        1

다음 질의를 실행하면 [test_result] 테이블이 자동으로 생성되고 그 결과가 들어가 있는 것을 확인할 수 있다.
SELECT t1.name as name, IFNULL(t1.age, 0) AS age1, IFNULL(t2.age, 0) AS age2
INTO test_result
FROM test1 t1
          LEFT OUTER JOIN test2 t2 ON t1.name = t2.name
UNION
SELECT t2.name, IFNULL(t1.age, 0), IFNULL(t2.age, 0)
FROM test1 t1
          RIGHT OUTER JOIN test2 t2 ON t1.name = t2.name

[test_result] 테이블
name   age1   age2
------------------------------
lin        22       0
sean    111      28
ted       0        1
posted by lepoussin
2009. 5. 13. 00:09 Database/MySQL
MS SQL에서 사용하는 ISNULL()은 MySQL에서 동작하지 않는다. MySQL에는 IFNULL()이라는 함수로 존재한다.

IFNULL(expr1, expr2)

expr1이 NULL이 아니면, IFNULL()은 expr1을 반환한다. 그것이 아니면(expr1이 NULL이면) expr2를 반환한다. 반환값으로 숫자, 문자열이 가능하다.

mysql> SELECT IFNULL(1,0);
            -> 1
mysql> SELECT IFNULL(NULL,10);
            -> 10
mysql> SELECT IFNULL(1/0,10);
            -> 10
mysql> SELECT IFNULL(1/0,'yes');
            -> 'yes'
posted by lepoussin