본문 바로가기

전체 글

(302)
[MSSQL 2000] ORACLE의 MINUS 연산 구현(차집합) 차집합의 경우는 아래와 같이 구현하면 되지만 한쪽이라도 테이블이 매우 큰 경우에는 이 방법으로는 시간이 너무 오래 걸린다. 그래서 그럴 겨우에는 그냥 교집합 구한담에 원하는 집합에서 교집합을 제거하는 순차적인 방법이 훠~얼씬 빠르다. SELECTC.ch_Name FROMCharacter C WHERENot Exists ( SELECT Ch_Name FROM Experence WHERE ch_Name = c.ch_Name ) SELECTC.ch_Name FROMCharacter C Left Outer Join Experence E ON C.ch_Name = E.ch_Name WHEREE.ch_Name Is Null
[아이폰]스트리밍 라디오 어플 - SmartTunes 2010년 1월 28일 현재 무료 어플이다. 음악 장르별로 스트리밍 음악을 들을 수 있다. 나는 메탈을 좋아해서 메탈 부분을 들어봤는데 음질도 나쁘지 않고, 음악 선곡도 좋았다. 위 화면은 현재 MetalRock06이라는 채널에서 스트리밍을 받고 있는 화면이다. 음표 부분을 누르면 스트리밍 채널을 선택하는 화면으로 바뀌고, Timer 버튼을 누르면 정해진 시간동안 음악이 나오고 꺼진다. Alarm이나 Sleep은 아직 안써봤지만 뭐 구지 설명할 필요도 없을 것이다. 아래 그림은 음악 장르별로 스트리밍 채널을 선택하는 화면이다. 아쉬운점은 듣고 있는 음악의 좋아서 곡 명을 알고자 해도 표시를 안해주니 알 수가 없다는 것이다.
[아이폰]셀카에 강한 추천 어플 - ProCamera 아이폰은 참 셀카 찍기가 나쁘다. 순정폰일 경우에는 터치를 해야 찍히니 자세도 잘 안나오고 내가 가운데 제대로 위치했는지 알기도 어렵고.. 탈옥폰일 경우에는 볼륨키로 사진찍는 기능을 넣을 수 있으나 볼륨키 누르다가 카메라 흔들리기 일쑤이고.. 그러다가 하루는 PodGate를 통해서 오늘만 무료 어플을 검색중에 아래와 같은 어플을 찾았다. 이름하야 ProCamera!! - 안타깝게도 현재는 $1.99이다.. 이 어플의 원리는 참 간단하다. 아래가 어플 실행 화면인데.. 위의 그림을 보면 눈치가 빠른 사람은 알아챌꺼 같은데.. 그렇다!! 카메라가 흔들리지 않으면 사진을 찍는것이다. 가운데 흔들리는 카메라 이미지를 터치하고 자세잡고 가만히 있으면 찰칵! 하고 사진이 찍힌다. 정말 굳 아이디어 아닌가!!?? 그..
[MSSQL 2000]테이블명으로 PK 컬럼 반환하기 SELECTC.NAME FROMSYSOBJECTS O INNER JOIN SYSINDEXES I ON (O.ID = I.ID) INNER JOIN SYSCOLUMNS C ON (I.ID = C.ID) WHEREO.NAME = '테이블명' AND (I.STATUS & 0X800) = 0X800 --PK를 의미하는거 같다. AND (C.NAME = INDEX_COL (@TABLENAME, I.INDID, 1) OR C.NAME = INDEX_COL (@TABLENAME, I.INDID, 2) OR C.NAME = INDEX_COL (@TABLENAME, I.INDID, 3) OR C.NAME = INDEX_COL (@TABLENAME, I.INDID, 4) OR C.NAME = INDEX_COL (@TABL..
[MSSQL 2008]MS-SQL 2008 서비스팩1을 설치해야 하는 이유 MS-SQL 2008이 처음 나왔을 때 뭐가 바뀌었나 해서 Express버전을 설치해보고 그 날로 바로 지웠다. 천여개의 테이블과 수백개의 저장프로시저를 사용하는데 원하는 테이블이나 저장프로시저만 검색해서 볼 수 있는 필터링 기능은 꼭 필요한 기능인데 이 기능에 버그가 있었기 때문이었다. 또한 2008에서 한 가지 버그를 또 발견하였는데 만약 내가 여러 데이터베이스 중 중간쯤에 있는 하나의 데이터베이스에만 접근 할 수 있는 권한이 있을 때(주로 웹호스팅 서비스를 받고 있을 때 이런 경우가 많이 발생한다) 데이터베이스 접근 권한이 없다는 오류와 함께 데이터베이스 목록을 가져오지 못하는 상황이 발생하게 되며 결국 내가 권한이 있는 데이터베이스까지 가보지도 못하게 된다. 그러다가 어제 서비스팩을 설치해보고 버..
[C#]프로그램 중복 실행 방지(뮤텍스 사용 안함) 우리는 보통 프로그램 중복 실행을 방지한다고 표현하는데 외국에서는 중복 인스턴스 실행을 방지한다고 표현하나보다. 여기저기 뒤진 끝에 외국 소스를 찾았는데 싱글 인스턴스를 유지하는 방법이라고 써 있었다. 아무튼 프로그램 중복 실행을 방지한다는 것은 뭐 다 알다시피 메모장을 실행시킨 후 다시 메모장을 실행시켜도 이미 열려있는 메모장이 있으면 또 열리지 않는다는 것을 의미한다. 처음에 데브피아나 여러 곳에서 중복실행 방지에 대해서 찾았었는데, 뮤텍스 방법 위주로만 나오길래 무슨 방법인가 했다. 예전에는 프로그램명으로 검색해서 같은게 떠있으면 두 번째 실행을 방지하는 방법을 썼었는데 말이다. 아무튼 뮤텍스가 뭔가 해서 대충 찾아보니(일과시간에 잠깐 짬내서 찾느라고 자세하게는 알아보지 못했지만) 프로그램의 실행상..
정식으로 닷넷계열 개발도구 설치하고 사용하기 우리는 그동안 개인적으로 공부하거나 테스트 할 때 어둠의 경로를 통해서 비공식적으로 개발도구를 설치하고 사용해왔을 것이다. 그러다가 얼마전에 전혀 이럴필요 없이 떳떳하게 개발도구를 설치하고 사용하고 공부할 수 있는 경로가 있음을 알게 되었다. 이 도구들 덕분에 몇 년동안 손을 놓았던 공부를 다시 시작하게 되어서 요새 너무 좋다. 나의 경우는 MS-SQL을 주로 사용하고 보조로 ASP.NET을 이용하며 C#프로그래밍도 간간히 하고 있다. 개발 환경을 구축하기 위해서는 개발도구를 설치하는 것이 제일 먼저 해야 할 일이겠다. 개인적으로 DB먼저 설치하고 나머지 개발도구를 설치하는 것을 추천한다. 왜냐하면 개발도구 먼저 설치하면 자동으로 DB도 설치하게 되는데 옵션이 좀 엉뚱하게 들어가게 되어서 나중에 다시 설..
[C#]작업관리자처럼 현재 실행중인 프로세스 목록 구하기 윈폼에 타이머 하나 추가한 후 다음 코드를 참조해서 만들면 된다. 텍스트박스는 멀티라인으로 만든다. 5초마다 실행중인 프로세스 목록을 구해서 텍스트박스에 뿌려주는 코드이다. private void Form1_Load(object sender, EventArgs e) { timer1_Tick(sender, e); timer1.Interval = 5000; timer1.Start(); } private void timer1_Tick(object sender, EventArgs e) { textBox1.Text = ""; foreach (System.Diagnostics.Process procName in System.Diagnostics.Process.GetProcesses()) { string procNm..