사이드바 영역으로 건너뛰기

조직에서 일하는 사람에 대한 배려와동기부여를 어떻게 할 것인지를 고민하지 않고는 높은 성과를 낼 수 없다

스탠포드 비즈니스스쿨제프리 페퍼 교수가 쓴 “Human Equation”, 즉 “사람방정식”이라는 책

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

sqlplus 에서 에디터로 vi 사용하기

sql>define_editor='vi'
 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

서비스가 로그온 실패로 인해 시작되지 않았습니다

window server 2003 + msssql 2000 에서 서버의 Administrator 암호를 바꾸고 난 다음에 sql server 를 실행시키면 "서비스가 로그온 실패로 인해 시작되지 않았습니다" 와 같은 에러가 나면서 실행이 안되는 경우가 있다.

 

 

시작->관리도구->서비스->MSSQLSERVER

 

속성탭에서 로그인을 보면 계정지정에서 암호를 바꾼 암호로 수정해주면 에러가 해결된다.

 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

CHARACTER SET KSC_5601 is not installed

1.에러 상황

 Win Xp Sp3 + Delphi 2009 + unidac 2.7 + Firebird 2.1 에서 작업한 파일을 다른 컴퓨터로 옮겨서 실행시키면 "CHARACTER SET KSC_5601 is not installed" 에러가 난다.

 

2.해결 방안

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

현재 실행되고 있는 디렉토리

ExtractFilePath(Application.exeName)

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

폴더 만들기

wdir := DCB_target.Drive + ':' + FormatFloat('00',E_cha.Value);
if Not DirectoryExists(wdir) then CreateDir(wdir);

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

파일 이동

if MoveFile(PChar(sOrgFileName),PChar(sNewFileName)) then
  begin
    ShowMessage(sOrgFileName+`을 `+sNewFileName+`로 옮겼습니다.`);
  end;
 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

nslookup

권한 있는 응답과 권한 없는 응답

Non-authoritative answer:

 

2010-02-24 수정

Name Server는 질의에 대한 결과를 캐쉬에 저장하고 있기 때문에 같은 질의가 요구되었을 때 Namespace를 뒤지지 않고 캐쉬의 자료로 빠르게 응답한다. 캐쉬의 자료는 Resolving시 얻은 TTL(Time To Live) 시간 동안에만 유효하고, TTL 경과후에는 파기된다. 클라이언트의 도메인 Resolving 요청시 네임서버가 캐쉬의 자료로 응답 할 경우는 Non-authoritative answer이고, 캐쉬에 자료가 없거나, 자료의 TTL이 만기되어 해당 도메인의 Primary 네임서버에서 직접 자료를 얻어 답변을 주었을 경우가 Authoritative answer이다.

 

 

기존에 잘못 알고 있던 내용

 

로컬 네임 서버로부터 로컬 도메인 영역 정보를 응답받은 경우 권한 있는 응답이라고 하며 다른 도메인 네임 서버로부터 도메인 영역 정보를 응답받은 경우 권한 없는 응답으로 표시된다.

 

 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

putty 의 copy

putty 를 쓸 때 copy 메뉴는 copy all to clipboard 밖에는 없어서 화면상의 모든게 저장된다.

 

일정한 영역만 저장하고 싶을 때는 마우스로 선택하고 마우스를 때면 클립보드에 선택된 영역이 저장된다.

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크

폴더의 파일 읽기

procedure TfmMain.GetData;
var
DirInfo: TSearchRec;
r,Loop,I : Integer;
begin
  if cbb1.ItemIndex < 0 then
  begin
    ShowMessage('가져올 파일 갯수를 선택하세요.');
    Exit;
  end;

  btnSaveExcel.Enabled := False;
  btnInputDB.Enabled := False;

  AdvStrGrid2.Clear;
  AdvStrGrid2.RowCount := 2;

  if not FolderDlg1.Execute then
    FolderDlg1.Execute;

  r := FindFirst(FolderDlg1.Directory + '*.xls', FaAnyfile, DirInfo);

  Loop := 0;

  While r = 0 do
  begin
    Application.ProcessMessages;
    if Loop = StrToInt(cbb1.Items[cbb1.ItemIndex]) then Break;

    if ((DirInfo.Attr and FaDirectory <> FaDirectory) and
          (DirInfo.Attr and FaVolumeId <> FaVolumeID))
    then
      //mmo1.Lines.Add(DirInfo.Name);
      SetFileName(DirInfo.Name);
      advgrdxcl1.XLSImport(FolderDlg1.Directory + '' + DirInfo.Name);
      AdvStrGrid2.ColCount := AdvStrGrid1.ColCount + 1;
      //DeleteFile(pChar(FolderDlg1.Directory + '' + DirInfo.Name));
      AdvStrGridFile.AddRow;
      AdvStrGridFile.Cells[0,Loop] := FolderDlg1.Directory + '' + DirInfo.Name;
    r := FindNext(DirInfo);
    Loop := Loop + 1;
  end;

  SysUtils.FindClose(DirInfo); // FindFirst에 의해 사용된 메모리를 해제
  btnSaveExcel.Enabled := True;
  btnInputDB.Enabled := True;
end;
 

진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크